c-忽略或重新定义GCC标准预定义宏



是否可以告诉GCC编译源代码,忽略__FILE____LINE__等宏,或者重新定义它们以扩展为空字符串?

与任何宏一样,您只需使用:

#undef __LINE__
#undef __FILE__

然后你可以重新定义它们。

也可以传递-U macroname以取消定义宏名称,传递-D macroname=definition以定义gcc选项的宏名称。

注意,如另一个答案所示,在C中对__LINE____FILE__进行取消定义或重新定义会调用未定义的行为。

最新更新