文件包含#include

转自: C程序设计(第二版) 谭浩强

  •  include基础

在#include命令中,文件名可以用双撇号或尖括号括起来,如可以在file1.c中用:

#include <file2.h>

or

#include "file2.h"


都是合法的。二者的区别:

  • 用尖括号(即<file2.h>形式)时,系统到存放C库函数头文件所在的目录中寻找要包含的文件,这称为标准方式。
  • 用双撇号(即"file2.h"形式)时,系统现在用户当前目录中寻找要包含的文件,若找不到,再按标准方式查找(即再按尖括号的方式查找)。

一般来说,如果为调用库函数而用#include命令来包含相关的头文件,则用尖括号,以节省查找时间。

                    如果要包含的是用户自己编写的文件(这种文件一般都在当前目录中),一边用双撇号。若文件不在当前目录中,双撇号内可给出文件路径。



被包含文件(file2.h)与其所在的文件(即用#include命令的源文件file1.c),在预编译后已称为一个文件(而不是两个文件)。因此,如果file2.h中有全局静态变量,它也在file1.c文件中有效,不必用extern声明。


  • Linux源码中的include:

kernel/arch/arm/include/asm/uaccess.h --->#include <asm/uaccess.h>(包含此uaccess.h时,注意include后包含的部分)

kernel/include/linux/kernel.h-->#include <linux/kernel.h>(包含kernel.h文件时,注意include后包含的部分)
kernel/include/linux/module.h-->#include <linux/module.h>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值