首页 > 编程知识 正文

c++ 尖括号_#include使用引号“”和尖括号<>的区别?

时间:2023-05-03 05:10:10 阅读:276289 作者:688

C++ 中 #include 头文件有两种形式,一种是使用尖括号<>,一种是使用双引号""

一、关于 #include

首先,#include 为预处理语句,那什么是预处理语句呢?

预处理语句最明显的标志是一些以#开始的特殊语句。

例如:#include、#define、#if 等就是预处理语句。在程序的其它编译处理(代码生成等)之前,先进行这些语句的处理。

在编译工具中,有一个叫预处理器的东西,预处理器发现 #include 指令后,就会进行一些预处理操作。

二、#include 定义 2.1 #include <xxx.h>

系统自带的头文件用尖括号括起来,这样编译器会在系统文件目录下查找。

2.2 #include "xxx.h"

用户自定义的头文件用双引号括起来,编译器首先会在用户目录下查找,然后再到 C++ 的安装目录(Linux 中可以通过环境变量来设定)中查找,最后在系统文件中查找。

这两种写法都是正确的写法,但它们却是有区别的。我们知道 C/C++ 已经有一些编写好的头文件(比如标准函数库等)。当我们使用 #include <XXX> 命令时,编译器就到系统文件夹里去找对应的头文件。

显然,用这种写法去寻找一个我们自己编写的头文件就会出错,因为我们自己写的头文件一般情况下并不在系统文件夹里。所以包含 C++ 提供的头文件时,应该使用尖括号。

相反地,#include "XXX.h" 命令则是先在当前文件所在的目录搜索是否有符合的文件,如果没有再到系统文件夹里去找对应的头文件。因此,无论这个文件是 C++ 提供的还是自己编写的,使用 #include "XXX.h" 命令一定是正确的。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。