return 0 在程序里很有必要么?

z30696287 2004-08-24 11:41:26
我是个菜鸟
发现在程序末尾有 return 0 和没有的结果是一样的
请问加 入 return 0 有必要么
...全文
1666 39 打赏 收藏 转发到动态 举报
写回复
用AI写文章
39 条回复
切换为时间正序
请发表友善的回复…
发表回复
xdspower 2004-08-26
  • 打赏
  • 举报
回复
对于全局主函数,还是加上的好,对于子函数,功能函数,对应与面向对象编程的方法定义函数,行为定义函数等等就要案需要定义了。
whyglinux 2004-08-25
  • 打赏
  • 举报
回复
>> 你要是做UNIX下的父子进程
>> 不加返回值return (n)或者exit(n)
>> 那还怎么做啊?

>> 提议不加的有两种人:
>> 1.菜鸟,不懂标准,没做过开发
>> 2.害你的

不能这么说。虽然楼主没有明确说明,在这里大家都是讨论的 main 函数的情况。标准对此函数(包括返回值、参数)有明确的规定。显然,如果是其它函数没有讨论的必要。
fire314159 2004-08-25
  • 打赏
  • 举报
回复

同意--
baconbally(一屋不扫睡大觉)

baconbally 2004-08-25
  • 打赏
  • 举报
回复
你要是做UNIX下的父子进程
不加返回值return (n)或者exit(n)
那还怎么做啊?

提议不加的有两种人:
1.菜鸟,不懂标准,没做过开发
2.害你的
xjp6688 2004-08-25
  • 打赏
  • 举报
回复
代码的规则!
JackZ001 2004-08-25
  • 打赏
  • 举报
回复
就我的经验,加不加是一个样的.
dick4610 2004-08-25
  • 打赏
  • 举报
回复
返回void的就不必加了
chnos 2004-08-25
  • 打赏
  • 举报
回复
对一般的编程而言return 0没有什么作用。
但是对操作系统结合紧密的程序,return 0有非常重要的作用。它告诉操作系统该进程是正常的结束,否则则是非正常的结束。Linux里的make程序,就是根据编译器编译源程序的正确与否来指导下一步的动作。
  • 打赏
  • 举报
回复
咔咔,老猫,标准中规定的main函数是没有 env 参数的
yuxiang123 2004-08-25
  • 打赏
  • 举报
回复
return 0;
一般是用来表示被调用程序正常返回,这个对main函数最重要,通常其他函数都会有定义的返回值
blh 2004-08-25
  • 打赏
  • 举报
回复
The standard format of main function is "int main (int argc, char* argv[], char* env[]" or "int main (int argc, char** argv, char** env)".

In soft designment the routine with return value is called function, and the one without return value is called procdure.
iewin 2004-08-25
  • 打赏
  • 举报
回复
k
athena301 2004-08-25
  • 打赏
  • 举报
回复
少用,有条件时,多用啊。。。。。
哈哈
adavid 2004-08-25
  • 打赏
  • 举报
回复
路过
cthiro123 2004-08-25
  • 打赏
  • 举报
回复
我在c++prinmer plus 上看到说明 我理解了 但我说不出来 呵呵
herryhuang 2004-08-25
  • 打赏
  • 举报
回复
楼上的各位说法都有道理,其实这里面涉及到C与C++的细微差异。

C标准允许使用两种返回值的main函数,即void和int,你也可以不写,这时候会当作int处理,对于返回值为int的main函数,如果某个出口没有return语句,编译器会自动加上一个return(0);如果你写了return语句,但是没有返整型数,编译出错。

C++标准规定main函数的返回值“必须”是int,对于没有写返回值的,当作int处理,如果某个出口没有return语句,编译器会自动加上一个return(0);如果你写了return语句,但是没有返整型数,编译出错。

以上内容来自ANSI C++ Programming Language Standard。你可以用它测试一下你的C++编译器(或者加上编译参数当作C编译器,因为现在纯C编译器恐怕不好找了)。
blh 2004-08-24
  • 打赏
  • 举报
回复
It is only a return value to calling function.
whyglinux 2004-08-24
  • 打赏
  • 举报
回复
C++程序可以不加,C程序一般要加上。
whyglinux 2004-08-24
  • 打赏
  • 举报
回复
C++程序可以不加,C程序一般要加上。
waini11 2004-08-24
  • 打赏
  • 举报
回复
没有必要 不过有的编译器一定要输入 否则报错
加载更多回复(19)

69,336

社区成员

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

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