了解预处理器正在做什么

Lyn*_*ite 5 c c-preprocessor

无论如何,在预处理器完成所有替换之后,还能看到代码的样子吗?

jit*_*ter 8

对于gcc,只需使用-E开关即可

gcc -E
Run Code Online (Sandbox Code Playgroud)

-E在预处理阶段后停止; 不要正确运行编译器.输出采用预处理源代码的形式,发送到标准输出.


caf*_*caf 7

这取决于你的编译器.有了gcc,你会用:

gcc -E source.c
Run Code Online (Sandbox Code Playgroud)


pmg*_*pmg 7

只是关于系统标题的注释(例如<stdio.h>):它们在预处理时会很痛苦.

gcc -E -nostdinc file.ccpp -nostdinc file.c不包括系统标题的扩展.