在写C的时候,在.h头文件中,我们会使用#ifdef ....<CODE>.... #endif,这样写是防止头文件被重复包含,导致的变量被多处声明或定义。
而在暑假前进行实训的时候,我选的题目为简易示波器设计,在进行程序设计的时候,发现有时候需要屏蔽很多行程序,很烦,于是在请教学长问题的过程中跟我讲了 #if ...... #endif这么一个技巧超级好用方便。
#if
#if (comdition)
{
//语句;
}
#endif
如果(comdition)为真, 也就是逻辑1的话,编译下面的语句,如果(comdition)为假,即逻辑0,则不编译下面的语句,
它多用在需要调试的代码中。代码非常占程序的体积,或者非常消耗单片机的资源 ,但是它在调试的时候又比较有用,调试完之后,就用不到了。
#ifdef
#ifdef 后面跟一个宏,这个宏可以没有值,只要在前面这个宏被定义了出来,就编译中间的代码。
#define debug
#ifdef debug
语句;
语句;
语句;
#endif
这里我宏定义了debug,所以会编译中间的代码,否则忽略。