C语言函数的定义格式与详解236


在C语言中,函数的基本定义格式如下:```c
返回类型 函数名(参数列表) {
函数体
}
```

其中:* 返回类型:指定函数调用的结果类型。如果没有显式指定,则默认为 `int`。
* 函数名:标识函数的唯一名称。
* 参数列表:指定传递给函数的参数列表,每个参数由其类型和名称组成。如果没有参数,则应使用 `void` 占位。
* 函数体:包含函数执行所需的语句和代码块。

下面是一些常见的返回类型:* `void`:表示函数不返回任何值。
* `int`:整数
* `float`:浮点数
* `char`:字符
* `double`:双精度浮点数

下面是一些函数定义示例:```c
// 返回一个整数
int sum(int a, int b) {
return a + b;
}
// 返回一个浮点数
float average(float x, float y) {
return (x + y) / 2.0;
}
// 没有返回类型,使用 void
void print_hello() {
printf("Hello, world!");
}
```
函数的参数传递
函数调用时,参数的值通过值传递传递给函数。这意味着参数的原始值不会被修改。
如果希望修改调用函数中变量的值,则需要将参数声明为指针:
```c
// 将指针参数传递给函数
void increment(int *n) {
(*n)++;
}
int main() {
int x = 10;
increment(&x); // 将x的地址传递给increment
printf("x = %d", x); // x的值已增加到11
return 0;
}
```
函数调用
函数调用使用函数名和参数列表:
```c
int result = sum(5, 10); // 调用sum函数并存储结果
```
递归函数
递归函数是指调用自身的函数。这通常用于解决具有分治和征服性质的问题:
```c
// 计算阶乘的递归函数
int factorial(int n) {
if (n == 1) {
return 1;
} else {
return n * factorial(n - 1); // 递归调用
}
}
```
函数原型
函数原型是函数定义的声明,它只指定函数的名称、返回类型和参数列表。在使用函数之前必须先声明函数原型:
```c
// 声明函数原型
int sum(int, int);
int main() {
int result = sum(5, 10); // 现在可以调用函数了
return 0;
}
```

2025-01-26


上一篇:C 语言中的比特输出

下一篇:C语言求素数函数