3564|2

312

帖子

0

TA的资源

纯净的硅(高级)

楼主
 

Stellaris 软件代码中的“(*((void (*)(void))(*(unsigned long *)0x2c)))()的用法” [复制链接]

首先(void(*)(void) )是一个强制类型转换符,他将后面的值强制转化为一个函数指针,该函数指针所指向的函数入口参数为 void,返回值也是void 后面的内容(*(unsigned long *)0x2C)是取出0x2C地址处的值转换为无符号长整形。那么(void (*)(void))(*(unsigned long *)0x2C)就是将0x2C处的长整形的数值转换为函数指针,假设为 fp的话; 那么上面的表达式就可以简化为 (*fp)();  将上面转化好的函数指针进行引用(也就是调用函数指针指向的函数)。

 

其中0x2C代表的含义,大家看附件的图就能明白。

[ 本帖最后由 hansonhe 于 2012-2-23 23:05 编辑 ]

0X2C.JPG (147.81 KB, 下载次数: 1)

售价: 1 分芯积分  [记录]

0X2C.JPG

最新回复

这也要收费,崩溃  详情 回复 发表于 2012-2-24 09:38
 
点赞 关注(1)

回复
举报

330

帖子

907

TA的资源

一粒金砂(中级)

沙发
 
来仔细看看 研究下
 
 

回复

149

帖子

0

TA的资源

纯净的硅(初级)

板凳
 
这也要收费,崩溃
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表