把#if 0 ... #endif当作另一种注释语法,相比块注释/* .. */有个巨大的优势:可嵌套!举个简单...
如果只是注释一段代码的,这个办法可以让绝大部分编辑器正常高亮被注释的代码,有语法分析的那些还可以...
1 #if 0 2 3 code 4 5 #endif (1)code中定义的是一些调试版本的代码,此时code完全被编译器忽略。如果想让code生效,只需把#if 0改成#if 1 (2)#if 0还有一个重要的用途就是用来当成注释,如果你想要注释的程序很长,这个时候#if 0是最好的,保证不会犯错误。(但是林锐的书上说千万不要把#if 0 来当...
高手们开动脑筋想到了“#if 0 ... #endif”,它同样由预处理器进行处理,同样可以“屏蔽”一段代码, 你想把说明文字写在里面也可以,这些和“/* */”都一样,但不一样的是:第一它允许嵌套(层数上限由预处理器决定)、 第二你随时可以把“#if 0”改成“#if 1”来取消对某段代码的“屏蔽”——很卓越的...
#if、#elif、#else、#endif #if可支持同时判断多个宏的存在,与常量表达式配合使用。常用格式如下: #if 常量表达式1 常量表达式可以是包含宏、算术运算、逻辑运算等等的合法C常量表达式,如果常量表达式为一个未定义的宏, 那么它的值被视为0。 特别注意 #if 和 #ifdef的区别 在判断某个宏是否被定义时,应当避免...
return0; } 这样的代码在编译的时候会出错,因为/* */ 跟最近的匹配,所以出现了错误。使用#if 0 ...#endif 可以用来避免这种错误,同时在代码中留下暂时不用,但可能有价值的代码。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #include <stdio.h> int...
c语言 出现的#if 0 是预编译指令,表示之后的代码不执行。C语言中预编译指令#if、#else和#endif指令一般配合使用。#if 后面的参数为真(非0)则执行#if 后面的模块。#if 后面的参数为假,则不执行#if 后面的模块。此指令多用在调试的时候,有段代码不想删除,怕后面用到所以用 #if 0 来...
2、0; #endif 它的作用是:当标识符已经被定义过(一般是用#define命令定义),则对程序段1进行编译,否则编译程序段2。 其中#else部分也可以没有,即: #ifdef 程序段1 #denif &3、#160; 这里的“程序段”可以是语句组,也可以是命令行。这种条件编译可以提高C源程序的通用性。如果一个C源程序在不同计算机...
if 0 //0即假,不执行 AAA elif 1 //1即真,于是BBB就执行(后面的CCC就不执行了)BBB else CCC endif
1 #if 0 2 3 code 4 5 #endif (1)code中定义的是⼀些调试版本的代码,此时code完全被编译器忽略。如果想让code⽣效,只需把#if 0改成#if 1 (2)#if 0还有⼀个重要的⽤途就是⽤来当成注释,如果你想要注释的程序很长,这个时候#if 0是最好的,保证不会犯错误。(但是林锐的书上说千万...