⼀般情况下,函数的声明、类型的声明放在头⽂件(.h)中,函数的实现是放在源⽂件(.c)⽂件中
多文件书写的好处:
1,逻辑清晰
2,方便多人协同
这里以一个加法函数 Add 做解释说明
1.add.h
用来函数声明
2.add.c
用来函数定义
3.test.c
对自定义函数的调用
注意:
1.要在源程序test.c的开始处用预处理命令(#include)将该头文件(add.h)包含起来
2.并且要用“ ”双引号给 add.h 包含起来!!!!
而不能用<>尖括号!!!!
错误如下
3.当然 #define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
这两个语句也可以写到 文件 add.h 中,结果一样
4.对比发现(1)
如果自定义函数返回值是int型的情况
观察#include "add.h"有无被注释掉
当#include "add.h" 被注释掉了,却又一样的结果 为什么呢?
Wow!因为
如果被调函数在主调函数之前,或被调函数的返回值是int 型或char型时,对被调函数的声明可以省略,所以结果不变
5.对比发现(2)
而当 #define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
这两语句在 文件 add.h 中,
#include "add.h" 被注释掉时,运行就出了问题。
是因为没有#include<stdio.h> 库函数printf用不了 出现错误