可能吗?如果没有,是否有任何可能有帮助的部分解决方案?
随意添加评论与澄清请求.
编辑:目前的答案似乎集中在案例当有一个#define,我只想跳到定义或知道什么是定义.这是简单的案例,是的,您的解决方案可以正常工作.但是当我在不同的文件中使用相同的#define,并且想要知道哪一个在首先启动时,这些技术都不是有用的.好的,我实际上使用#warning仔细找到正确的地方.但这需要很多工作.
解决方法 你看 :# shows preprocessed source with cpp internals removedg++ -E -P file.cc# shows preprocessed source kept with macros and include directives g++ -E -dD -dI -P file.cc
上面的内部是gcc的线标记,当您读取输出时有点混淆. -P剥他们
-E Stop after the preprocessing stage; do not run the compiler proper. The output is in the form of preprocessed source code,which is sent to the standard output. input files which don't require preprocessing are ignored.
注意:评论正确抱怨这只是一个部分解决方案.当宏将被替换时,它不会告诉你.它显示您的预处理源,这可能是有帮助的.
总结以上是内存溢出为你收集整理的c – 当给定宏/预处理器符号被声明时,如何知道(在GCC中)?全部内容,希望文章能够帮你解决c – 当给定宏/预处理器符号被声明时,如何知道(在GCC中)?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)