C++ "#include"输出说明
c++ "#include" output explanation
试图了解#include
的工作原理。我正在阅读,在预处理期间,它只是用引用文件的内容代替了自己。
要验证,我创建了两个文件。一个名为otherfile
的文件,仅包含字符串1234
和一个包含
test.cpp
#include otherfile
abcd
我运行 g++ -E test.cpp
,我得到的输出是
# 1 "test.cpp"
# 1 "<built-in>" 1
# 1 "<built-in>" 3
# 373 "<built-in>" 3
# 1 "<command line>" 1
# 1 "<built-in>" 2
# 1 "test.cpp" 2
# 1 "./wtf" 1
1234
# 2 "test.cpp" 2
abcd
其余的线从何而来,它们是什么意思?
其余的线来自
它们是由预处理器添加的。
这是什么意思?
根据文档
源文件名和行号信息由表单的行传达
的行# linenum filename flags
这些称为线条标记。根据需要将它们插入输出(但永远不会在字符串或字符常数中)。它们的意思是以下行源于Line Linenum的文件文件名。文件名将永远不会包含任何非打印字符;它们被八进位序列取代。
相关文章:
- 递归函数计算序列中的平方和(并输出过程)
- 如何使用 < 和 > 命令获取 c++ 中的输入和输出?
- 请解释"函数1(p1,p2,p3);"的输出
- C++:将控制台输出存储在宏中更好吗
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- 如何在OMNET++中指定与命令行参数组合的输出文件名
- 为什么我的代码在输出中增加了93天
- 如何从void函数输出字符串
- 输入到文件并输出到另一个文件,并将流文件传递给函数
- AES加密到解密未正确输出
- 如何将c++程序的一些输出传递给shell,以便在shell中使用
- 使用C++程序合并排序没有得到正确的输出
- 为什么我不能在不创建字符串变量的情况下使用函数的字符串输出
- 当使用通配符和null指针调用函数时,对输出的说明
- 有没有办法我可以在 C++ 中使用 if 语句来说明如果一个字符串不是两个名称的 eqal,它会给出一个输出,ATM i
- C++ "#include"输出说明
- 使用向量(STL)时,未定义的行为,请说明理性背后的以下代码输出
- 宏输出说明
- 一个数字和字段宽度的格式化输出,C++标准在哪里说明它
- c++代码输出说明