exit(1);与exit(2);有什么区别?

xuejinglan 2001-10-21 10:22:10
我在读函数的时候,常常发觉,有些函数返回exit(1),有些函数返回exit(2);请问有什么区别?
...全文
1132 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Only_I 2001-10-23
  • 打赏
  • 举报
回复
up
SlaSk 2001-10-23
  • 打赏
  • 举报
回复
Jazzlover(强),确实是这样的跟CNer(......)所说,这些是标准的。
若是你自己写的程序,则你自己才知道,因为是你自己定义的返回值。。。
krerix 2001-10-22
  • 打赏
  • 举报
回复
blowfish(网络探戈)说的对
CNer 2001-10-22
  • 打赏
  • 举报
回复
是的,是这样的,但是,那些只是已经标准化的返回代码。
当然,你也可以自定义自己的返回代码,
这些返回代码只是给操作系统返回时看的。。。
经常用于批处理文件中。
if lasterror ,,,,,
你也可以在你自己的程序中,得到上一个程序的返回代码。。。
Jazzlover 2001-10-22
  • 打赏
  • 举报
回复
to slask():
是这样的吗?不要骗我。
SlaSk 2001-10-22
  • 打赏
  • 举报
回复
0操作成功完成。
1功能错误。
2系统找不到指定的文件。
3系统找不到指定的路径。
4系统无法打开文件。
5拒绝访问。
6句柄无效。
7存储控制块被损坏。
..........................还有很多呢,你还是用Error lookup查询吧。
kingofark 2001-10-22
  • 打赏
  • 举报
回复
摘自《The GNU C Library Refence Manual Volume 2》:

23.5.1 Normal Termination(正常终止)

void exit (int status)

exit函数以状态status终止进程。函数无返回值。

23.5.2 Exit Status(退出状态)

当程序退出(exit)时,可以使用exit status向其父进程返回一些关于其终止原因的信息。exit status是一个介于0到255之间的值。要退出的进程将exit status作为exit函数的参数传递(pass)出去。


在 MSDN 和 C++ Builder 的帮助中,也能找到类似的叙述。
love_snoopy 2001-10-22
  • 打赏
  • 举报
回复
为了SHELL编程用的,返回给SHELL的程序状态。负值表示不正常,0和正值表示正常。每个数值表示一种退出状态,就是正常退出也有不同的状态。
tohigh 2001-10-22
  • 打赏
  • 举报
回复
只有0,1。exit(0)正常退出,exit(1)非正常退出。exit(1)、exit(2)没有区别。
agame 2001-10-21
  • 打赏
  • 举报
回复
随便问一下exit(-1)和楼上的那位说的两个函数又有什么不同?(我乃菜鸟一个,多谢!)
luhao 2001-10-21
  • 打赏
  • 举报
回复
应该是没有区别的
只是真与假,0和1
blowfish 2001-10-21
  • 打赏
  • 举报
回复
没有什么本质的区别.
只是程序的入口函数main()在程序结束时的返回值不同.如果是exit(1),则程序在结束运行时就返回1,若是exit(2),程序就返回2.
就是这么简单了.

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧