c语言中 关于预处理和宏替换是否编译编译

c语言中 宏替换不占用运行时间 只占用编译时间 而刚才看到一句话是 预处理命令在编译之前由与处理程序处理 不能直接对他们进行编译
对于宏替换和预处理有点儿晕了 到底要不要编译呢

第1个回答  2011-10-18
宏不会被compiler直接作为代码编译,你可以把它理解为一种编译器处理源代码的方式,比如#define CONST_NUM 10这样,后面代码里所有用CONST_NUM的地方都会在编译时被替换成10这个数,预处理呢,根据你定义的不同宏,比如定义了DEBUG,后面有两大段代码,
#ifdef DEBUG
XXX
#else
XXX
#endif
控制编译器具体去编译代码文件里的那部分代码这样,个人理解,希望能对你有些帮助。
相似回答