返回信息流这里是 函数指针 把 常数0 给 强制转化了么?
那这样使用是什么意思呢
这是一条镜像帖。来源:北邮人论坛 / cpp / #86472同步于 2015/4/9
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
求教个宏,没看懂~
henceman
2015/4/9镜像同步14 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
NULL绝大多数情况下就是个0
这里0和1都被转换成函数指针了,用NULL表示默认signal handler,值为1的指针表示忽略signal的handler
1 需要的是回调函数,类型就是函数指针
2 转型是因为类型不对
【 在 FromMars 的大作中提到: 】
: 既然传入0、1 为什么还要定义接口参数为函数指针
那为什么需要的是回调函数而不是UINT?
【 在 iFadeToBlack 的大作中提到: 】
: 1 需要的是回调函数,类型就是函数指针
: 2 转型是因为类型不对
:
我是觉得既然能传入整数 干嘛要把接口定义成传入函数指针而让整数强制转换成函数指针来适应接口。。。
这应该是C才用的多的吧 回调函数没怎么用过 看来得回去补补
【 在 sugeladi 的大作中提到: 】
: 如果自己写raise就要用回调了吧。。
指针就是个值。类型代表你如何解释一段内存/数据。
至于为什么可以用0表示NULL,1表示SIG_IGNORE,因为一般有效指针不会为这两个值,具体参见x86的内存映射:
http://wiki.osdev.org/Memory_Map_%28x86%29#Overview
你理解了指针和类型的概念就知道为什么会这么做了。
【 在 FromMars 的大作中提到: 】
: 我是觉得既然能传入整数 干嘛要把接口定义成传入函数指针而让整数强制转换成函数指针来适应接口。。。
: 这应该是C才用的多的吧 回调函数没怎么用过 看来得回去补补
signal这一块本来就是C的吧
【 在 FromMars 的大作中提到: 】
: 我是觉得既然能传入整数 干嘛要把接口定义成传入函数指针而让整数强制转换成函数指针来适应接口。。。
: 这应该是C才用的多的吧 回调函数没怎么用过 看来得回去补补
学习了 指针我知道 0、1这两个指针所指向的内容还真没怎么深究过
然后0、1指向了中断向量表之后 会发生什么咧?
刚刚看了
X86的 中断向量表
0和1对应的函数分别是 除法溢出 和 单步(debug)
【 在 iFadeToBlack 的大作中提到: 】
: 指针就是个值。类型代表你如何解释一段内存/数据。
: 至于为什么可以用0表示NULL,1表示SIG_IGNORE,因为一般有效指针不会为这两个值,具体参见x86的内存映射:
: http://wiki.osdev.org/Memory_Map_%28x86%29#Overview
: ...................