包括头文件语法

Include header file syntax

本文关键字:语法 文件 包括头      更新时间:2023-10-16

阅读各种C/C++代码时,我可以说我对在代码中包含头文件的这两种方式感到困惑。

#include <stdio.h>

#include "stdio.h"

一些文本编辑器具有自动完成功能。我大部分时间都是被推荐给后者的。但在各种程序示例中,也建议使用角括号。

在编写C/C++程序时应该选择哪一个?两者有什么不同?它们是特定语言的吗?

不,它们不是特定于语言的。C和C++都利用了它们。

https://gcc.gnu.org/onlinedocs/gcc-3.1/cpp/Include-Syntax.html

使用预处理包括用户和系统头文件指令'#include'。它有两种变体:

#include <file>

此变体用于系统头文件。它搜索文件系统目录的标准列表中的命名文件。你可以准备使用-I选项将目录添加到此列表(请参见Invocation(。

#include "file"

此变体用于您自己程序的头文件。它搜索对于包含当前文件中,然后在引号目录中,然后使用相同的目录对于CCD_ 1。您可以将目录置于报价列表之前目录中带有-i引号选项。CCD_ 3,无论是用引号还是尖括号分隔,其行为都类似注释无法识别的字符串常量,以及宏名称未展开。因此,#include <x/*y>指定包含名为x/*y的系统头文件。

但是,若反斜杠出现在文件中,则会将其视为普通文本字符,而不是转义字符。没有任何字符处理适用于C中的字符串常量的转义序列。因此,#include "xn\y"指定了一个包含三个反斜杠。(某些系统将解释为路径名分隔符它们也以相同的方式解释CCD_ 8。它最便于携带仅/。(

如果行中有任何内容(除了注释(,则为错误在文件名之后。