比如main函数里面需要调用一个max函数我们把max函数单独放到一个文件里面。把程序分成3部分test.c、max.c、max.h各文件代码如下:
Windows下使用开发工具的话只需要将test.c、max.c、max.h文件放到一个项目里面執行编译就行。 在上述实例中max.h头文件中存放的是max.c文件里面的max的函数原型声明当test.c里面需要调用max函数时需要使用#include关键字添加头文件,这样就能让编译器在编译的时候知道函数原型
- 和宏一样是编译预处理指令,在编译之前就处理了
- 把文件的全部文本内容原封不动地插入到它所茬的地方
- ""编译器先在.c所在目录查找如果没有就到指定目录查找
- <>编译器只在指定的目录查找
- 编译器标准库的头文件有专门的存放目录
- 环境變量和编译命令行参数可以指定寻找头文件的目录
- 目前的c语言怎么分成多个文件编译器默认会引入所有的标准库
- #include <stdio.h>只是为了让编译器知道printf函數的原型,保证你调用函数时输入的参数是正确的
在使用和定义这个函数的文件都应该#include这个文件
一般是所有.c都有对应的同名.h,把所有对外公开的函数原型和全局变量的声明都放进去
不对外公开的函数和变量加static
声明是不产生代码的 函数原型声明
定义是产生代码的 函数定义、變量定义等
头文件中只放声明(基本规则)不能重复声明 为了避免重复声明一般可以通过在定义前加入判断进行规避,例如
上述方法叫標准头文件结构