我有以下代码
#define PROC_ADD
void main(void)
{
while(1)
{
#ifdef PROC_ADD
// Do this code here then undefined it to run the code in the else
// processing work
#undef PROC_ADD
#else
// now that PROC_ADD has been undefined run this code
// processing work
#endif
}
}
但是,它将运行代码。但它不会在未定义else
之后运行代码。PROC_ADD
我认为原因可能是您只能在编译时定义和取消定义,而不是在运行时。但是,我不确定。