第1个回答 2010-03-25
两者是有些区别的,,1.const定义的变量有类型,宏定义没有...2.对于宏定义,每次引用这个定义时系统要给它分配一次内存,而const定义的系统只在第一次使用时分配一次内存,以后使用都不用分配了....然后就是所以尽量用const定义,效率会好些,,,自己打的,也是菜鸟..希望对你有帮助,一起加油...本回答被提问者采纳
第2个回答 2010-03-25
#define A 3
你下面程序里不管在哪里写到A 编译器都直接替换为3
输出函数的字符串里除外
而const int A=3;
只有在用到A作为变量的时候才是3
第3个回答 2010-03-25
#define 没有数据类型
而且另一个缺点是编译器和程序员看到的代码不同,这不利于debug
我也问过这个问题