介绍c语言返回值的用法并举例
时间: 2023-07-19 10:25:42 浏览: 106
在C语言中,函数可以返回一个值,这个返回值可以用来传递函数的执行结果或者状态。函数的返回值类型必须在函数声明时声明。
以下是一些C语言返回值的用法及其示例:
1. 传递函数执行的结果:
```c
int add(int a, int b) {
int sum = a + b;
return sum;
}
int main() {
int a = 10, b = 20, result;
result = add(a, b);
printf("%d + %d = %d\n", a, b, result);
return 0;
}
```
在这个例子中,add函数返回a和b的和,调用add函数并将返回值赋值给result变量,最后打印出a、b和它们的和。
2. 传递函数执行的状态:
```c
int check(int num) {
if (num > 0) {
return 1; // 返回状态1表示num为正数
} else if (num < 0) {
return -1; // 返回状态-1表示num为负数
} else {
return 0; // 返回状态0表示num为零
}
}
int main() {
int num = -10, result;
result = check(num);
if (result == 1) {
printf("%d is positive.\n", num);
} else if (result == -1) {
printf("%d is negative.\n", num);
} else {
printf("%d is zero.\n", num);
}
return 0;
}
```
在这个例子中,check函数返回num的状态,调用check函数并根据返回值打印出num的状态。
3. 传递函数执行的错误码:
```c
int divide(int a, int b, int *result) {
if (b == 0) {
return -1; // 返回错误码-1表示除数为零错误
}
*result = a / b;
return 0; // 返回0表示成功
}
int main() {
int a = 10, b = 0, result;
int status = divide(a, b, &result);
if (status == -1) {
printf("Error: divide by zero.\n");
} else {
printf("%d / %d = %d\n", a, b, result);
}
return 0;
}
```
在这个例子中,divide函数计算两个整数的商并将结果保存在result指针所指向的位置,如果除数为零则返回错误码-1,调用divide函数并根据返回值打印出结果或错误信息。
4. 作为判断条件:
```c
int is_even(int num) {
if (num % 2 == 0) {
return 1; // 返回1表示num为偶数
} else {
return 0; // 返回0表示num为奇数
}
}
int main() {
int num = 10;
if (is_even(num)) {
printf("%d is even.\n", num);
} else {
printf("%d is odd.\n", num);
}
return 0;
}
```
在这个例子中,is_even函数判断一个整数是否为偶数,调用is_even函数并根据返回值打印出结果。
5. 作为函数调用的参数:
```c
int square(int num) {
return num * num;
}
int main() {
int num = 5;
printf("The square of %d is %d.\n", num, square(num));
return 0;
}
```
在这个例子中,square函数返回一个整数的平方,调用square函数并将返回值作为printf函数的参数打印出结果。
阅读全文