我正在检查 GCC 生成的预处理输出,我在使用标志.i
生成的文件中看到了很多这些输出:-save-temps
# 8 "/usr/include/i386-linux-gnu/gnu/stubs.h" 2 3 4
绝对路径前后的数字stubs.h
是什么意思?它似乎是由预处理器插入的某种调试信息,并允许编译器发出引用此信息的错误消息。这些行不影响程序本身,但是每个数字具体是做什么用的?
我正在检查 GCC 生成的预处理输出,我在使用标志.i
生成的文件中看到了很多这些输出:-save-temps
# 8 "/usr/include/i386-linux-gnu/gnu/stubs.h" 2 3 4
绝对路径前后的数字stubs.h
是什么意思?它似乎是由预处理器插入的某种调试信息,并允许编译器发出引用此信息的错误消息。这些行不影响程序本身,但是每个数字具体是做什么用的?
根据文档,文件名前的数字是行号。文件名后面的数字是一个标志,含义如下:
1
表示新文件的开始。2
表示返回到一个文件(在包含另一个文件之后)。3
表示以下文本来自系统头文件,因此应禁止显示某些警告。4
表示应将以下文本视为包含在隐式 extern "C" 块中。