如果尔等之辈问本大神,为什么需要头文件呢?本大神告诉你:想要知道为什么需要头文件的话,你就应该知道C语言编译的过程;

本大神为你们准备了基本知识:

C语言文件的编译与执行的四个阶段并分别描述

C++中的头文件和源文件:如何写头文件    (这个写的很好,明白)

为什么有头文件的原因:(按步骤来)

1. 在一个文件A中,如果要使用另一个文件B里的函数 sum(),那么我们就需要在文件A里面声明函数 sum();  对吧;

2. 如果在文件A 需要使用文件B里的多个函数 , 那么就需要在文件A中声明文件B里的多个函数;是不是有点麻烦?

3,现在定义了一个头文件B.h,里面写入文件B里的函数的声明;  我们直接在文件A里面 #inlucde“B.h” 就可以;这样也方便其它文件引用B文件里的函数;

至于头文件里都可以写入什么,它怎么写,那就看:c语言头文件怎么写?

头文件只在编绎(具体为:预处理,编译,汇编)的时候有用,把源码编绎生成 .o 文件;

补充一下头文件的搜索目录:

#include <>直接到系统指定的某些目录中去查找。
#include “”先在当前目录去找,然后再到系统指定的某些目录中去查找;

那么,系统指定了哪些目录呢?

1.由gcc的参数-I 指定的路径(指定路径有多个路径时,按指定路径的顺序搜索)

2.然后找gcc的环境变量 C_INCLUDE_PATH, CPLUS_INCLUDE_PATH, OBJC_INCLUDE_PATH

3.再找内定目录
/usr/include
/usr/local/include
/usr/lib/gcc-lib/i386-linux/2.95.2/include
/usr/lib/gcc-lib/i386-linux/2.95.2/../../../../include/g++-3
/usr/lib/gcc-lib/i386-linux/2.95.2/../../../../i386-linux/include

最新文章

  1. .NET平台开源项目速览(13)机器学习组件Accord.NET框架功能介绍
  2. Python 修饰符
  3. Struts 2.0全面分析
  4. FIREFOX A tool for easily making HTTP requests (GET/PUT/POST/DELETE)
  5. java--实现将文字生成二维码图片,并在中间附上logo,下方附上文字
  6. JS中定义类的方法
  7. WebStorm mac 下载地址及注册码
  8. Editplus 中将文本换行替换为&lt;p&gt;标签的正则表达式
  9. 第一篇、CSS3_transtion的使用
  10. 得到指定进程PID
  11. 怎样把.git版本控制文件夹放在项目目录下
  12. 在路由器上搭建SVN服务器
  13. IDEA打包jar包
  14. Android Activity学习笔记——Activity的启动和创建
  15. JS基础---常见的Bom对象
  16. Emacs 使用graphviz-dot-mode创建架构图
  17. 关于CSS重要知识点(1)
  18. 具体解释linux下的串口通讯开发
  19. xshell 提示 继续使用此程序必须应用到最新的更新或使用新版本 的解决方案
  20. vue-cli项目启动遇到的坑

热门文章

  1. angular中的表单数据自定义验证
  2. ubuntu 16.04 root 初始密码设置
  3. 分享几个免费IP地址查询API接口
  4. 使用 &quot;java -jar&quot;命令启动jar包时报不支持的jdk版本异常
  5. PostgreSQL建表SQL语句写法
  6. 关于electron的跨域问题,有本地的图片的地址,访问不了本地的图片
  7. sscanf函数——强大的C语言库函数
  8. 06-老马jQuery教程-jQuery高级
  9. Scapy:局域网MAC地址扫描脚本
  10. nginx封ip,禁用IP段的设置说明