gpt4 book ai didi

c-preprocessor - 取消定义类似函数的宏

转载 作者:行者123 更新时间:2023-12-03 21:16:07 27 4
gpt4 key购买 nike

C /C++ 有两种类型的宏:

 #define ABC   /* usual */


 #define FUNC(a)  /*function-like*/

但是我怎么能取消定义它们呢?

更新:那么取消定义“类常量宏”和“类函数宏”之间没有区别吗?

最佳答案

#undef ABC
#undef FUNC

#undef "cancels" out a previous #define .效果就像你以前从未有过 #define对于特定标识符。请注意 #define s 不考虑范围,因此最好仅在需要时使用它们。

另请注意,一个宏标识符是否使用“通常”语法而另一个使用“类似函数”的语法并不重要。 #define ABC#define ABC(A)两者都定义了一个名为 ABC 的宏.如果两者都有,没有 #undef其中一个,最新的一个“覆盖”另一个。 (如果发生这种情况,某些编译器可能会发出警告。)

关于c-preprocessor - 取消定义类似函数的宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3504351/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com