C语言深度解剖(精讲版)——读书笔记23 &&自己的一些理解
来源:互联网 发布:数码视讯 知乎 编辑:程序博客网 时间:2024/05/17 02:45
第四章 指针和数组
怪物!!?(*(void(*)())0)()
是不是觉得上一篇的函数指针太简单了,不够刺激?来点刺激的吧....
(*(void(*)())0)() ;这是《C Traps and Pitfalls》这本书里的一个经典例子;没发狂吧,下面我们来分析分析:
第一步:void(*)() 这是一个函数指针,这个函数没有参数,没有返回值;
第二步:(void(*)() )0 这是将0强制转换为函数指针,0是一个地址,也就是说一个函数保存在首地址为0的一段区域内。
第三步:(*(void(*)() )0) 这是取0地址开始的一段内存里面的内容,其内容就是保存在首地址为0的这段区域内的函数。
第四步:(*(void(*)() )0)() 这是函数的调用
- C语言深度解剖(精讲版)——读书笔记23 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记1 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记2 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记3 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记4 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记5 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记6 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记7 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记8 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记9 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记10 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记11 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记12 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记13 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记14 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记15 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记16 &&自己的一些理解
- C语言深度解剖(精讲版)——读书笔记17 &&自己的一些理解
- 栈的实现演示
- 1005
- JavaScript原型
- HADOOP中WORDCOUNT源码分析
- HADOOP中DATANODE无法启动
- C语言深度解剖(精讲版)——读书笔记23 &&自己的一些理解
- 基于ECLIPSE的HADOOP开发-----HDFS API学习
- 回调函数以及钩子函数的概念
- ffmpeg 转换VC工具已经可以生成工程文件(续)
- 基于ECLIPSE的HADOOP应用开发环境配置
- HADOOP伪分布式模式 配置
- MySQL5解压缩版windows下安装配置应用总结
- 基本盘与定盘子
- Hadoop单机非分布式模式 配置