请教一个宏定义的执行结果

valengu   2008-7-27 14:38 楼主
USB通讯中有个宏定义:
#define flag() ((void (*)())0x80003200)()

这个宏定义是什么意思啊。
执行以下语句  
flag();
的结果是什么?

回复评论 (3)

学习。。
点赞  2008-7-27 23:03
函数指针。C语言里面函数名字其实也是地址(和数组类似)。

这里将0x80003200作为函数名字,相当于函数入口,执行flag(),其实就是从0x80003200开始执行一个函数。
点赞  2008-7-28 09:19
o 明白了。谢谢。
点赞  2008-7-28 22:09
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复