在 C 语言中,函数是一组执行特定任务的语句集合。
一、函数的定义
- 语法:
返回值类型 函数名(参数列表) { 函数体 }
- 返回值类型:指定函数返回的数据类型。如果函数不返回任何值,则为void。
- 函数名:用于标识函数的名称,遵循标识符命名规则。
- 参数列表:可以包含零个或多个参数,每个参数由参数类型和参数名组成,用于接收外部传递给函数的值。如果函数没有参数,则参数列表为空。
- 函数体:包含了函数执行的具体语句。
- 示例:
int add(int a, int b) { return a + b; }
这个函数名为add,接收两个整数参数a和b,并返回它们的和。
二、函数的调用
- 语法:
函数名(实际参数列表);
- 实际参数列表:提供给函数的具体值,这些值将被传递给函数的参数。参数的数量和类型必须与函数定义中的参数列表相匹配。
- 示例:
int main() { int result = add(3, 4); printf("Result: %d\n", result); return 0; }
在main函数中调用add函数,并将3和4作为实际参数传递给它。函数返回的值被存储在result变量中,并打印输出。
三、函数的作用
- 模块化编程:将复杂的任务分解为较小的、可管理的函数,每个函数专注于特定的功能,提高代码的可读性、可维护性和可重用性。
- 代码组织:使程序结构更加清晰,便于理解和修改。不同的函数可以在不同的地方被调用,实现代码的复用。
- 参数传递:通过参数向函数传递不同的值,使函数能够适应不同的情况,增加程序的灵活性。
四、函数的分类
- 库函数:C 语言标准库提供了许多预定义的函数,如printf、scanf、strlen等。这些函数可以直接在程序中使用,无需重新编写代码。
- 用户自定义函数:由程序员自己编写的函数,用于满足特定的编程需求。
例如,计算两个数的最大值的自定义函数:
int max(int a, int b) { return (a > b)? a : b; }