return的一个理解
之前对 return 0; 的理解很模糊,后来才慢慢知道
下列代码在windows下实验,如果是Linux环境,需要稍作修改。
例如在D盘下新建aaa文件夹,编写程序
a.c
#include<stdio.h>
int main()
{
printf("Hello World\n");
return 0;
}
b.c
#include<stdlib.h>
#include<stdio.h>
int main()
{
int i;
i=system("a");
printf("i=%d\n",i);
return 0;
}
其中system是控制台调用的意思
运行结果:
D:\aaa>gcc -o a a.c
D:\aaa>gcc -o b b.c
D:\aaa>a
Hello World
D:\aaa>b
Hello World
i=0
假如修改a.c程序为
a.c
#include<stdio.h>
int main()
{
printf("Hello World\n");
return 100;
}
那么结果为:
D:\aaa>gcc -o a a.c
D:\aaa>b
Hello World
i=100
所以末尾return 的作用就是给调用者返回值
从语法上来说可以返回任何值。 但为统一起见,规定成功返回0,失败返回-1