您的位置:首页 > 其它

#include -- 头文件的搜索路径

2011-11-15 09:40 190 查看
#include -- 头文件的搜索路径

2007年01月29日 星期一 18:57
#include 指令的两种使用形式

(1) 尖括号告诉编译器在一个或者多个标准系统目录中找到文件/usr/include   /usr/local/include

(2) 双引号意味着首先搜索本地目录(如果在本地目录找不到,再到标准系统目录中找)但是具体搜索哪个目录依赖于编译器。有些编译器搜索源代码文件所在目录,有些编译器搜索当前工作目录,有些搜索工程文件所在目录。

gcc的本地目录,默认情况下就是源码(.c文件)所在目录,当然也可以用-I指定本地目录(可以用多个-I指定多个本地目录)

gcc默认就会搜索/usr/include /usr/local/include的,你还可以设置环境变量CFLAGS=-I /somewhere $CFLAGS来增加搜索路径

# vim source/test.c 

----------------------------------

1 #include <stdio.h>  

2 #include "test.h"   // 有了-I
include/
,这里就不需要关心头文件的所在路径了


4 int main()

5 {

6     printf("g_int = %d\n", g_int);

7     return 0;

8 }

# vim include/test.h 

----------------------------------

1 int g_int = 100;

# gcc source/test.c  -I include/

# vim stdio.h
----------------------------------
  1 #define printf

# vim test.c
----------------------------------
  1 #include "stdio.h" /* 用本地的头文件 */



3 int main()

4 {

5     printf("hi zengxiaolong\n");

6 }

# gcc test.c

# ls

a.out  stdio.h  test.c

# ./a.out   // 没有任何输出

#
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息