【C语言初阶】函数的声明、定义和分文件编写
六、函数的声明和定义
1 函数声明
函数声明是告诉编译器有一个函数叫什么、有什么参数、返回值类型是什么。但是函数具体实现有没有是不确定的。(具体实现取决于函数是否定义)
-
函数的声明一般出现在函数的使用(函数调用)之前。满足先声明(非定义声明或定义声明)后使用。
-
在工程项目中,函数声明一般是放在头文件中的。
-
函数的普通声明是非定义声明,函数的定义是定义声明,都属于声明的一种。
2 函数定义
函数定义是指函数的具体实现,给出函数的具体功能。
注意:函数可以声明多次,但是只能定义一次。
七、函数的分文件编写
可以将函数声明和函数定义分文件编写。
- 可以分模块编写特定的功能
- 把函数的实现和声明分离
1 test.h
用来放置函数的声明
#ifndef __TEST_H__
#define __TEST_H__
//函数的声明
int Add(int x, int y);
//int Add(int ,int);//形参名可以省略
#endif //__TEST_H__
解释说明:
1 函数的声明可以理解为非定义声明。
2 add.h
文件给出函数的声明,解释函数的功能、参数、返回值,使用者就能大概知道它包含了什么函数以及如何使用这些函数。
2 test.c
用来放置函数的具体实现
#include"test.h"//包含自定义的头文件
//Add函数的实现
int Add(int x, int y)
{
return x + y;
}
解释说明:
1 #include"test.h"
:使用双引号包含自定义的头文件,会拷贝头文件中的信息,起到声明的作用。
2 双引号一般用于包含自定义的头文件,编译器会先在当前路径下寻找头文件,找不到才会去系统配置的库环境变量和用户配置的路径中去搜索。
3 可以不包含声明函数的头文件,除非有用到头文件中的信息(如:#define
定义的标识符常量等)
总结:
本节介绍了函数的声明(非定义声明)和定义(定义声明),以及可以分文件编写函数的声明和定义。
感谢您的阅读!如有任何错误,欢迎您的批评指正!