4. return 语句
return 语句 的作用是用来结束当前函数的执行,返回到调用此函数的地方。同时它可以返回一个值(表达式的结果)作为调用此函数的返回值。
语法:
return [表达式];
说明:
- return 语句后跟表达式计算结果的类型要和函数返回值的类型一致,如果不一致则尝试使用隐式类型转换,如果不能转换则会报错。
- 如果函数的返回类型为 void 类型,则 return 语句不需要此表达式。
- 在 UNIX/Linux 操作系统中,main 函数的返回值的最低 8 位会返回给 Shell 作为程序执行的结果,在 Shell 中可以使用特殊变量
$?获取该值。
C 语言函数的常用的约定:
- 函数返回
0值表示成功 - 函数返回非
0值 表示失败。
示例:
// filename: test_return.c
#include <stdio.h>
int main(int argc, char *argv[]) {
printf("1\n");
return 10; // 此return 语句将结束 main 函数的执行。
printf("2\n"); // 此语句及以下语句不会执行。
return 0;
}
上述程序在 Linux 操作系统下的运行结果:
weimingze@mzstudio:~$ gcc -o test_return test_return.c
weimingze@mzstudio:~$ ./test_return
1
weimingze@mzstudio:~$ echo $? # 打印 test_return 的运行结果
10
weimingze@mzstudio:~$ ./test_return || echo "OK"
1
OK
上述运行结果显示
./test_return的返回结果为假,echo "OK"命令才会运行
练习:
- 练习使用 return 语句从主函数的任意位置返回,尝试返回 零值 、 非零值以及大于
255的值,尝试在 UNIX/Linux 终端下用$?打印程序运行的结果。