在C/C++语言循环语句中,我们使用exit(0)或exit(1)或其他值。这个值需要什么,当我们退出循环时,这个值在循环中的作用是什么,exit()中的1和0的含义是什么?为什么我们在c语言的循环中使用退出函数中的任何值
回答
exit()将终止进程,而不是循环。对于参数,它是退出状态(0,EXIT_SUCCESS,EXIT_FAILURE):http://www.opengroup.org/onlinepubs/000095399/functions/exit.html
建议:您应该在提问前搜索并阅读功能或语言功能的文档。
冒着多余的风险,它是该过程的退出代码。通常,您可以定义一系列值来指示不同程度的成功或失败。传统上,0表示成功,1表示失败(或者非零)。然后,调用你的程序或函数可以检查该值(如果它倾向于),并从中收集一些关于你的过程是否成功的想法。
例如,你可以有一个程序,复制从位置A到B的文件如果无法复制的文件,因为位置B是写保护,你可以返回-1,并利用任何其他程序作为其过程中的一个步骤现在知道你失败了,而期望位置B的文件完整且可访问是一个不好的主意。
如果你使用exit()函数,你并不关心你是否在循环中。它将退出程序并返回给定的整数作为返回值。
在C/C++中没有循环返回值或类似的东西。
可以在这里解释downvote吗? – Patrick 2010-02-12 14:48:50
该值仅在外部程序要使用它来确定程序是否成功运行时才起作用。通常,成功运行的程序返回0或更大,如果失败则返回-1。
您不使用exit()来退出循环。退出将退出您的整个程序。
您提供给退出功能的号码将是您程序的退出代码。
通常退出值为0表示程序成功完成。
非零值通常是对程序中的错误标识符,用于指示
- 程序无法
- 数量通常表示失败的原因
对于歇斯底里。 ..对不起,历史......原因。回到Unix时代,仍然在Linux,Windows等等,你的程序不仅仅是单独运行 - 它从某个地方被调用(另一个程序,shell(bash等,dos提示符等)他们可能会想知道,如果它成功与否......
嗯......不,你有这样的严重错误。
在CISH,exit
终止整个程序。如果你只是想停止循环,使用break
。如果要停止当前的循环迭代,并继续到下一个,你用continue
。
提供给exit
的值将作为整个程序的退出值返回(例如,您已将return
修改为main的值)。操作系统对该值的操作取决于操作系统。它的含义也或多或少取决于你,虽然有些操作系统将除0之外的任何内容定义为各种实用程序的错误。
您可能会困惑return(x)
和exit(x)
。 return
将信息发送回调用函数,exit
关闭整个过程,为启动过程的环境提供退出状态(如果有的话)。 从C函数返回的值通常是错误值,但它们的含义取决于进程的语义; exit
的含义取决于环境的语义。
想象它像一艘船; return
就像是一个给直接主管的信息,并且可能表明为什么今天无法清理甲板,以及项目为什么被放弃; exit
是一条瓶装信息,用来描述船舶沉没的原因和方式。
终止语言循环热门语句是:break
,continue
,goto
,return
,throw
和exit
。还有其他可以退出循环的功能,但你可以自己研究它们。
break
语句退出最近的循环。执行循环结束后继续执行。
continue
语句导致执行从循环的顶部开始。 continue
之后的声明将不会执行。这可能会或可能不会退出一个循环,这取决于你的学生。
goto
语句可用于退出循环。在环路外放置标签并使用goto
。
return
语句将退出该功能。如果功能是main
,它将终止程序。
throw
语句将退出循环和当前函数。执行从最近的catch
声明恢复,或者如果没有找到相关的catch
声明,则终止程序。
exit
函数将退出循环并终止程序。程序结束后,传递给exit
的值将传递给操作系统。有些操作系统允许在脚本中使用程序的返回值。 exit
的值0和1取决于操作系统;有些使用0表示成功终止。其他值可能会导致终止的原因。
其他方法退出循环,部分取决于实现的未定义行为:
- 手托循环的终止条件 。
- 除以零。
- 取消引用空指针。
- 负数的平方根。
- 计算没有终止NUL字符的C字符串 的长度。
如果你澄清你的问题,你会得到更好的答案。
- 1. 为什么我的for循环退出?
- 2. 为什么循环想在c#中使用函数的参数?
- 3. 为什么c语言需要((;;))循环?
- 4. 为什么我的数组在退出循环后不见了?
- 5. 使用C在Eclipse中退出值 - 它们是什么意思?
- 6. 为什么我们在JavaScript循环中使用中断?
- 7. 为什么我们在MIPS汇编语言中使用.globl main?
- 8. C++为什么我的循环中断?
- 9. 为什么我们在SQL中使用标量值函数
- 10. 为什么我的函数循环python
- 11. c语言中断循环
- 12. 为什么我的while循环中的任何if语句都不起作用?
- 13. 如何在C中退出while循环?
- 14. 为什么我的并发函数在Go中过早退出?
- 15. 为什么我不能在scala中的匿名函数中使用for循环?
- 16. 为什么我的循环在递归函数中无限?
- 17. 程序为什么退出主循环?
- 18. 为什么不会退出while循环?
- 19. 在循环C中退出时出错
- 20. 从函数退出循环
- 21. 不知道为什么它退出循环(在C)
- 22. C语言中的循环以及如何正确使用它
- 23. 在while循环中对整数求平均值。 C语言
- 24. 为什么我的数组在退出循环时会丢失所有数据
- 25. 为什么循环“scanf”方法在客观语言中死循环?
- 26. Python 3:为什么我的while循环退出?
- 27. 为什么我的程序不能退出while循环?
- 28. 语言C:为什么我的赋值语句会破坏我的数据?
- 29. c语言中的语法是什么语法作为参数
- 30. 立即退出c中的Parallel.For循环#
不明白这里downvote。这是一个有效的问题。 – 2010-02-12 14:33:34
可能是因为问题本身的文本是错误的陈述。 – 2010-02-12 15:33:41
因为仇敌会讨厌。 – 2010-02-12 15:38:33