【发布时间】:2011-11-23 05:18:37
【问题描述】:
我对 c++/linux 相当(非常)陌生,并且正在研究 glibc 中的 vfprintf 函数。它包括 REF (...) 的许多用途,我假设它是一个宏,但我在任何地方都找不到它的定义。我已经搜索了文件本身以及所有包含的文件。
它是一个宏吗?如果是,它的定义在哪里?还有没有比逐个搜索所有包含的文件更好的方法来查找宏的定义?
【问题讨论】:
-
gcc可以输出带有适当参数的中间处理结果。当我想知道标识符的声明位置或每个宏的定义位置和方式时,我总是使用g++ -E -dD sourcefile.cpp。这将给出所有宏定义的预处理结果。但是,#if忽略的代码不会出现。其他会影响预处理的参数应该像编译命令一样添加,如-I,以产生正确的结果。man gcc将提供更多信息。 -
@fefe,应该是一个答案,值得 +1 :)