为什么我写return -1编译运行也没问题?
c语言吧
全部回复
仅看楼主
level 1
后后现代人
楼主
如题。一般说int main()配return 0,表示返回值为0,即成功,不成功的话return -1。我故意把0改成了-1,结果编译和运行都正常,这是为什么?
2022年07月13日 15点07分
1
吧务
level 14
GTA小鸡
返回值是给调用这个程序的程序看的,方便了解程序是否执行成功
2022年07月13日 15点07分
3
后后现代人
那也就是说,我程序运行成功后,按照我写的这个写法,应该返回-1,如果不正常,返回的不是-1,我这个说法对吗?
2022年07月16日 11点07分
fx2422esplus
@后后现代人
如果返回-1,运行者(比如操作系统、终端之类的)会认为程序出错了。至于出错以后干什么,那看你环境了。
2022年07月16日 13点07分
后后现代人
@fx2422esplus
应该是我写return 0;返回-1是认为出错了,但是我写return -1;,那返回-1就是正常的了,我也试过了,没有报错
2022年07月16日 13点07分
fx2422esplus
@后后现代人
那可能只是你用的这个环境不使用这个返回值,无论什么样的退出都当做正常退出。你写retuen -1就是在告诉系统这个程序出错了,那么无论实际上出没出错系统都会认为出错了,至于理不理这个错误,那就是另一回事了。
2022年07月16日 13点07分
level 1
stanchcorder6
返回0表示程序正常退出,返回非0值表示程序异常退出。当程序运行时引发异常而无法处理该异常时,操作系统会强行终止程序执行,并返回一个非0的异常代码
2022年07月13日 16点07分
4
plu_icesheep
@后后现代人
正常和异常无非是人为约定的。。。
2022年07月14日 00点07分
jeeson小童鞋
@后后现代人
你返回一句ImSaBi也是可以的
2022年07月14日 14点07分
后后现代人
那我写return -1是不是相当于异常退出了?
2022年07月13日 22点07分
level 9
qweasdzzzz
没啥问题
2022年07月14日 01点07分
5
level 8
贴吧用户_04MaXe4
你去学学 Linux shell 编程就知道为什么程序最后要返回一个值了,这个值一般用在 shell 脚本里的条件表达式里,来决定后续处理。
2022年07月14日 02点07分
6
level 6
东方树叶真难喝
他要的只是一个int类型的返回值啊,-1也是int当然不会报错,除非你写其他异常处理的语句
2022年07月14日 02点07分
7
后后现代人
我试了,返回float类型的也没问题
2022年07月16日 11点07分
绷不住小鬼
@后后现代人
因为会强制的隐式的转换
2022年07月16日 12点07分
东方树叶真难喝
@后后现代人
会给你强制转换成int的。如果你main前面写的是float然后return的是int类型也会帮你强制转化成float,但是有的编译器写float main()会报错。
2022年07月16日 12点07分
后后现代人
@东方树叶真难喝
谢谢!又让我明白了一个细节
2022年07月16日 13点07分
level 11
BOOK_思义
就一用来当状态码的,返回什么数可以自己定,嵌套最简单的办法是放if
2022年07月14日 02点07分
8
level 6
Hibiki
你爱返回啥返回啥,反正主线程返回了程序就结束了,至于返回的什么与你无关,只与调用他的程序和调试器有关
2022年07月14日 03点07分
11
level 11
钱欢银
3楼正解
2022年07月14日 04点07分
12
level 12
热心网友来了
欢迎进来一起学习交流讨论问题
2022年07月14日 06点07分
13
level 12
洛克人杰洛
好古老的IDE
2022年07月14日 06点07分
15
level 1
带带带带带
C语言可以和操作系统原理一起学
2022年07月14日 09点07分
16
level 1
岚^_^
然而 return x是给自己的其他组件,调用的时候进行判断的。
2022年07月14日 09点07分
17
level 5
喜爱美少女的光棍
我一直纳闷,这个主函数的return他return哪里去了,return给系统了吗?
2022年07月14日 09点07分
18
readmoon2
对
2022年07月14日 11点07分
晴空supreme
命令行里能看到返回值的
2022年07月14日 12点07分
巴黎正白旗🎅
是的
2022年07月14日 14点07分
plu_icesheep
@晴空supreme
怎么看呀
2022年07月14日 20点07分
1
2
3
尾页