因为之前在写蓝桥杯驱动的时候自己这一块学的不是很仔细,所以想做个笔记来让自己好好学习一下。
函数的分文件
1 头文件(.h文件):
- 头文件主要用于存放函数的声明、宏定义、结构体和全局变量的声明等。
- 头文件中不包括函数的具体实现。
- 通过 #include 指令在其他文件中包含该头文件,以便可以使用其中声明的函数和变量。
2 源文件(.c
文件):
- 源文件存放函数的具体实现。
- 源文件需要包含相应的头文件,以便能够使用头文件中的声明。
3. 举例
假设我们有一个求和的函数 add ,我们可以将它的声明和实现分为两个文件。
头文件math_functions_h
#ifndef MATH_FUNCTIONS_H
#define MATH_FUNCTIONS_H
// 函数声明
int add(int a, int b);
#endif
源文件math_functions.c
#include "math_functions.h"
// 函数实现
int add(int a, int b) {
return a + b;
}
主文件 main.c
#include <stdio.h>
#include "math_functions.h"
int main() {
int result = add(3, 5);
printf("Result: %d\n", result);
return 0;
}
编译
你需要同时编译main.c和 math_functions.c,可以使用以下命令:
gcc main.c math_functions.c -o main
分文件的好处
- 模块化:将代码分为多个模块,便于维护和扩展。
- 可复用性:某些常用函数可以封装在一个库中,其他程序可以直接引用。
- 提高编译效率:只需重新编译修改的文件,不用重新编译整个项目。