C语言#include命令尖括号和双引号的区别


C语言#include命令尖括号和双引号的区别

文章插图
include%20是C语言预处理命令的一种,叫做文件包含命令,用来引入对应的头文件(.h文件) 。
#include%20的处理过程很简单,就是将头文件的内容插入到该命令的所在位置,从而把头文件和当前源文件连接成一个源文件 。
使用#include命令时,有两种用法:
  • 尖括号:#include%20<myheader.h>
  • 双引号:#include%20"myheader.h"
这里需要注意:#include%20命令后面只能包含一个头文件,多个头文件需要使用多个%20#include 。
使用尖括号%20<%20>%20和%20双引号%20"%20"%20的区别在于头文件的搜索路径不同:
  • 尖括号:编译器会到系统路径下查找头文件;
  • 双引号:编译器会首先在当前目录下查找头文件,如果没有找到,再到系统路径下查找 。
 
比如 stdio.h 和 stdlib.h 都是标准头文件,默认在系统路径下,所以使用尖括号和双引号都能够成功引入;而我们自己编写的头文件,一般存放于当前项目的路径下,所以不能使用尖括号,只能使用双引号 。
PS:也可以把当前项目所在的目录添加到系统路径,这样就可以使用尖括号了,但是一般没人这么做 。
正常情况下,使用尖括号来引入标准头文件,使用双引号引入自己编写的头文件,这样一眼就能看出头文件的区别 。
 

【C语言#include命令尖括号和双引号的区别】


    推荐阅读