#include 大家都知道是进行预处理,也就是说是预先定义好的计算机认识的内容。
条件预处理
#ifdef
#else
#endif
举例
在平时进行开发的时候,需要不断地调试。另外,给客户参考的时候,总不能将调试版本拿出来或者是在两个版本之间不断切换。这样,不仅客户有不好的体验,开发者也会徒增工作量。
类似以上的文件内容,如果在每次编译之前去定义一个宏定义相当于改变了源文件,这时候,我们可以在编译的时候直接运行,生成调试版本即可。
直接编译:gcc -o build test.c
运行之后得到如下结果:
条件编译:gcc -D
eg:gcc -DA -o build test.c
运行之后得到如下结果:
也就是说,可以根据不同需求进行版本之间的切换。