您现在的位置: 主页 > 嵌入式软件 > C/C++ > 预处理命令简介, #include , #include_next
本文所属标签:
为本文创立个标签吧:

预处理命令简介, #include , #include_next

来源: 网络用户发布,如有版权联系网管删除 2016-07-09 

预处理命令简介, #include , #include_next #include用于文件包含. 在#include 命令所在的行不能含有除注释和空白符之外的其他任何内容.
#include "headfile"
#include
#include 预处理标记
前面两种形式大家都很熟悉, "#include 预处理标记"中, 预处理标记会被预处理器进行替换, 替换的结果必须符合前两种形式中的某一种.
实际上, 真正被添加的头文件并不一定就是#include中所指定的文件. #include"headfile"包含的头文件当然是同一个文件, 但#include 包包含的"系统头文件"可能是另外的文件. 但这不值得被注意. 感兴趣的话可以查看宏扩展后到底引入了哪些系统头文件.
关于#include "headfile"和#include 的区别以及如何在gcc中包含头文件的详细信息, 参考本blog的GCC笔记.
相对于#include, 我们对#include_next不太熟悉. #include_next仅用于特殊的场合. 它被用于头文件中(#include既可用于头文件中, 又可用于.c文件中)来包含其他的头文件. 而且包含头文件的路径比较特殊: 从当前头文件所在目录之后的目录来搜索头文件.
比如: 头文件的搜索路径一次为A,B,C,D,E. #include_next所在的当前头文件位于B目录, 那么#include_next使得预处理器从C,D,E目录来搜索#include_next所指定的头文件.
可参考cpp手册进一步了解#include_next


              查看评论 回复



嵌入式交流网主页 > 嵌入式软件 > C/C++ > 预处理命令简介, #include , #include_next
 

"预处理命令简介, #include , #include_next"的相关文章

网站地图

围观()