clang的`cpp -dD`相当于什么?

时间:2010-12-28 19:12:41

标签: gcc clang c-preprocessor

如果我想知道gcc给我的隐式预处理器定义了什么,我可以输入echo "" | cpp -dD。有谁知道clang的等价物是什么?

2 个答案:

答案 0 :(得分:39)

clang -dM -E - < /dev/null

将列出clang的所有预处理器定义。

答案 1 :(得分:3)

clang“dumping processor state”选项定义为here。您要查找的选项是-dM,因此您将运行:

clang -dM -E -

要触发执行,您需要终止手动输入:

  • 对于Windows: Ctrl-Z 输入
  • 对于Unix: Ctrl-D

否则,直接执行:

  • 对于Windows:clang -dM -E - < NUL
  • 对于Unix:clang -dM -E - < /dev/null