在语言中一般 0 是 False,1(或非 0)是 True;但是我们写函数的时候为什么一般没有错误返回是 0 喃??搞得我糊里糊涂的

2019-11-21 18:15:00 +08:00
 lysS
1509 次点击
所在节点    问与答
8 条回复
ysc3839
2019-11-21 18:26:03 +08:00
返回 0 是错误代码吧? 0 代表没有错误。
OutOfMemery
2019-11-21 18:26:27 +08:00
非 0 可以对各种错误信息编码,检查是否非零就可以了
lxk11153
2019-11-21 18:33:35 +08:00
littleylv
2019-11-21 18:41:22 +08:00
这里的 0 和 false 不是一个道理。
C 语言里的 main 函数建议都是返回 int,比如正常执行完毕就 return 0; 告诉控制台程序正常退出了;异常退出就 return -1

hello.c
#include <stdio.h>

int main(){
printf("hello, world\n");
return 0;
}

hello2.c
#include <stdio.h>

int main(){
printf("hello, world\n");
return -1;
}

注意看下图,执行完之后的颜色区别

Pastsong
2019-11-21 18:45:06 +08:00
main 函数的返回 int 是遵循 Unix 规范的,0 代表没有错误。自己写函数爱返回什么就返回什么。
sunny352787
2019-11-21 19:05:01 +08:00
因为正确只有一种,错误有很多种需要处理
lysS
2019-11-21 20:42:21 +08:00
@littleylv
@sunny352787
@Pastsong
懂了,感谢解疑
richangfan
2019-11-21 21:07:39 +08:00
0 errors,0 warnings

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/621864

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX