#include< >:
程序预处理的时候,编译器会从系统文件目录下,系统配置的库环境中去寻找对应的头文件,一般用于引用标准库的头文件。
比如#include<stdio.h> #include<map>等等
#include" ":
编译器会先在当前目录下去寻找对应的文件,找不到的时候再去库环境中去寻找。一般用于引用个人编写的头文件
比如自己定义的#include"head.h"
Linux下,C和C++的库文件,一般在/usr/include目录下
我之前一直都习惯用<>去写头文件,但是当我尝试编写静态库的时候,出现了一个报错:
然后这是我的add.c文件的代码:
#include<stdio.h>
#include<head.h>
int add(int a, int b)
{
return a + b;
}
我在使用我自己写的头文件时,用的是<head.h>,所以系统会在库环境中去寻找,找不到。改成"head.h"之后,就不会报错了
当然,如果我执行命令:sudo cp head.h /usr/include
之后再gcc -c进行汇编,就不会报错了,因为我把自己写的head.h文件,复制到了库环境目录下,在预处理的时候,系统就能找到我写的head.h头文件了