首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于用#if 0 . #endif 来注释代码.该如何解决

2012-04-24 
关于用#if 0... #endif来注释代码...const int N 1... ...#if N 0代码段_1#else代码段_2#endif不管c

关于用#if 0 ... #endif 来注释代码...
const int N = 1;

... ...
#if N == 0
代码段_1
#else
代码段_2
#endif


不管const int N为几,都是编译出代码段_1。
如果换成const int N = 1;换成#define N 1 就可以编译出代码段_1,为什么?

[解决办法]
const int N,这样的值是 这是编译期才知道的。
而预处理是在编译期之前的处理的,所以没发知道具体点值。默认就给你0值了。
而#define和#if都是一样在编译期处理的,所以能够正常处理。

热点排行