我正在尝试使用#ifndef如下所示。
#ifndef MACRO1 || #ifndef MACRO2
....
#endif我已经试过了
#ifndef (MACRO1 || MACRO2)
..
#endif但对于这两种情况,这两种情况下的错误
错误:#ifndef指令末尾的额外标记
发布于 2015-06-09 14:34:19
#ifdef和#ifndef是#if defined(...)和#if !defined(...)的特殊缩写。但是,它们只能用于单个宏,不允许逻辑操作。因此,如果检查多个宏,则将#if与defined()运算符一起使用。作为一个常规操作程序,这可以与逻辑操作相结合,就像for !defined()已经做的那样。
发布于 2015-06-09 14:23:10
使用#if预处理器指令:
#if !defined(MACRO1) || !defined(MACRO2)发布于 2015-06-09 14:27:17
您可以使用以下代码
#if !defined(MACRO1) || !defined(MACRO2)
#endif您可以使用#if指令中定义的运算符来使用预处理器行中计算为0或1的表达式。
https://stackoverflow.com/questions/30734785
复制相似问题