关于define的问题

[复制链接]
查看11 | 回复3 | 2008-11-23 17:03:59 | 显示全部楼层 |阅读模式
用define定义的常量是什么类型的呢。。。

回复

使用道具 举报

千问 | 2008-11-23 17:03:59 | 显示全部楼层
用define定义的常量无所谓类型,他只是简单的字符串替换。例如:#define PI 3.14上面的代码段中,3.14也是一串字符,只不过有点“特殊”——全由数码和点号组成。在编译前程序中非双引号中的 PI 均被字符串 3.14 替换。程序执行时将3.14识别为数值进行运算。这就是宏的特点。...
回复

使用道具 举报

千问 | 2008-11-23 17:03:59 | 显示全部楼层
他只是替换,没有类型,这是在预编译时进行的,也就是可以很方面的进行宏定义,好处多多。预编译后就已经成了你想要表达的代码,编译器当然认识(只要你的程序没问题)...
回复

使用道具 举报

千问 | 2008-11-23 17:03:59 | 显示全部楼层
楼上两位正确,实际上#define可以定义代码段(常量只是代码的一个特例),如#define begin {#define end }...beginint safename;...end...
回复

使用道具 举报

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

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行