use*_*722 60 c gcc c-preprocessor
我使用打印出C预处理器的输出
gcc -E a.c
Run Code Online (Sandbox Code Playgroud)
输出包含许多行
# 1 "a.c"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "a.c"
# 1 "c:\\mingw\\bin\\../lib/gcc/mingw32/4.5.0/../../../../include/stdio.h" 1 3
# 19 "c:\\mingw\\bin\\../lib/gcc/mingw32/4.5.0/../../../../include/stdio.h" 3
# 1 "c:\\mingw\\bin\\../lib/gcc/mingw32/4.5.0/../../../../include/_mingw.h" 1 3
# 31 "c:\\mingw\\bin\\../lib/gcc/mingw32/4.5.0/../../../../include/_mingw.h" 3
# 32 "c:\\mingw\\bin\\../lib/gcc/mingw32/4.5.0/../../../../include/_mingw.h" 3
# 20 "c:\\mingw\\bin\\../lib/gcc/mingw32/4.5.0/../../../../include/stdio.h" 2 3
Run Code Online (Sandbox Code Playgroud)
我从未在C中看到过这种语法.有人可以解释这是做什么的吗?
jde*_*aan 75
这些行是用于调试的提示(实际来自该行之后的代码)
# line-number "source-file" [flags]
Run Code Online (Sandbox Code Playgroud)
标志的含义(空格分隔):
uvs*_*tid 45
这些linemarkers被提到man gcc的-P选项.
该-P选项专门用于清除这些行:
gcc -E -P source.c
Run Code Online (Sandbox Code Playgroud)
查看详细文档(之前已回答).
| 归档时间: |
|
| 查看次数: |
40321 次 |
| 最近记录: |