在C语言中,调用子程序(函数)通常涉及以下几个步骤:
声明子程序
使用`extern`关键字声明子程序的返回类型和参数类型。这告诉编译器子程序的存在,并说明它可以在其他文件中定义。
声明示例:`extern int sum(int, int);`
定义子程序
在单独的代码文件中定义子程序,包括其返回类型、参数类型、名称和函数体。
定义示例:
```c
int sum(int a, int b) {
return a + b;
}
```
调用子程序
在主程序或其他子程序中使用子程序的名称后跟参数列表调用它。
调用示例:`int result = sum(5, 7);`
注意事项:
子程序的声明和定义必须匹配,否则会产生编译错误。
子程序的参数列表必须与声明相匹配。
子程序可以返回一个值,也可以不返回(使用`void`类型)。
子程序可以在不同的源文件中定义和调用(使用`extern`关键字)。
示例代码:
文件名:main.c
```c
include
// 声明子程序
extern int sum(int, int);
int main() {
int a = 5, b = 7;
int result = sum(a, b);
printf("The sum of %d and %d is %d\n", a, b, result);
return 0;
}
```
文件名:functions.c
```c
include
// 定义子程序
int sum(int a, int b) {
return a + b;
}
```
编译和运行:
将`main.c`和`functions.c`编译为一个程序:
```sh
gcc main.c functions.c -o main
./main
```
输出将是:
```
The sum of 5 and 7 is 12
```
通过这种方式,你可以在C语言中有效地调用子程序,实现代码的模块化和重用。