打印

哪位C高手帮忙解释一下这一句,我似懂非懂

[复制链接]
2285|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
quguoli81|  楼主 | 2007-11-20 14:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
quguoli81|  楼主 | 2007-11-20 17:06 | 只看该作者

是我问的太白痴,还是没有把问题表达清楚〉?

使用特权

评论回复
板凳
computer00| | 2007-11-20 17:16 | 只看该作者

宏定义

以后程序中出的Page_Erase,在编译时,编译器将使用PGM[21]=0x40; temp = ((unsigned char(*)(unsigned int))(PGM))来代替Page_Erase。

使用特权

评论回复
地板
quguoli81|  楼主 | 2007-11-20 17:29 | 只看该作者

00,这一句((unsigned char(*)(unsigned int))(PGM))是

把什么赋给了TEMP?

使用特权

评论回复
5
djyos| | 2007-11-20 17:39 | 只看该作者

函数指针

第一句很明白。
第二句是把PMG转换成函数指针赋给了temp,该函数的返回值是unsigned char,参数是unsigned int。
这样定义不太好,最好是用do--while循环包起来,否则,看看下列程序的后果吧:

if(i==0)
    Page_Erase;

使用特权

评论回复
6
至爱森林| | 2007-11-20 21:33 | 只看该作者

多谢ls,收了

使用特权

评论回复
7
sinanjj| | 2007-11-23 17:17 | 只看该作者

顶一下,

我也看不出来, 查一下资料先

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

258

帖子

1

粉丝