C语言预编译有关问题求大神指点
发布时间: 2013-12-28 22:19:33 作者: rapoo
C语言预编译问题,求大神指点
#include <stdio.h>
int main(void) {
#if PRINT_A == B
printf("define A");
#else
printf("not define A");
#endif
return 0;
}
运行结果是,打印出:define A;
感觉很奇怪,求大神解释
[解决办法]
PRINT_A和B符号都是没有定义的,所以值默认都为0,==的关系是成立的。
[解决办法]#ifdef A
[解决办法]因为你的B不是代码中实际定义的变量,没有地址。。。。
[解决办法]