打印
[牛人杂谈]

return 0的意义

[复制链接]
943|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
捉虫天师|  楼主 | 2016-12-25 22:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       ISO/ANSI C++ 标准上规定C++ 程序的每一个函数都要有一个返回值。我们在写程序时,通常将那些不需要返回值的函数定义为 int 型,函数的最后一行写成“return 0;”。如果此函数没有正常运行则系统会返回一个-1,如果此函数正常运行完毕,则由此函数返回0。      如果函数不需要返回值,将其定义为 void 型,则在一些比较新的编译器上编译,是要报错误的,但是在一些老的编译器上编译,是可以通过的。建议最好按照ISO/ANSI C++ 标准的规范写程序。

沙发
捉虫天师|  楼主 | 2016-12-25 22:39 | 只看该作者
所以如果你没有返回值的话,也要返回一个0,这样看起来才完整啊。

使用特权

评论回复
板凳
yiyigirl2014| | 2016-12-25 23:05 | 只看该作者
这些都是给编译器看的

使用特权

评论回复
地板
捉虫天师|  楼主 | 2016-12-27 23:55 | 只看该作者
在C语言中,return函数有两种原型
1、return 1;
2、return (1)
这两种原型是等价的.
关于return的几句话是:
1、有些函数确实可以不需要return,自然结束即可,如上面的OutputSomething();
2、有些人习惯为return的返回值加一对(),如: return (a); 这样写和 return a;完全一样.当然,在某些特殊的情况下,一对()是必要的.
3、一个函数是void类型时,return不能接返回,这时return仅起结束函数的作用.
4、记得return 接的是一个表达式,可以是一个立即数,一个变量,一个计算式,前面我们就看到 return a+b;的例子. return 甚至也可以接一个函数.

使用特权

评论回复
5
huangcunxiake| | 2016-12-28 20:59 | 只看该作者
满足完整性,一个程序按格式应该完整的,一个函数必须有类型和返回值,就算是个空,也要标注。

使用特权

评论回复
6
598330983| | 2016-12-28 23:56 | 只看该作者
如果是个单文件程序当然是返回0就行了,不过如果有的程序是多个exe互相调用的,估计就要定义返回值了。

使用特权

评论回复
7
643757107| | 2016-12-29 00:03 | 只看该作者
最好按照ISO/ANSI C++ 标准的规范写程序

使用特权

评论回复
8
wahahaheihei| | 2016-12-29 23:44 | 只看该作者
返回一个0给操作系统 表示我的程序已经正常结束

使用特权

评论回复
9
捉虫天师|  楼主 | 2016-12-31 20:16 | 只看该作者
此贴如此下沉?

使用特权

评论回复
10
pigisyou70| | 2017-1-17 15:51 | 只看该作者
我還以為那個是沒有意義,原來是有個規範在

使用特权

评论回复
11
捉虫天师|  楼主 | 2017-1-24 13:36 | 只看该作者
pigisyou70 发表于 2017-1-17 15:51
我還以為那個是沒有意義,原來是有個規範在

是啊,都是有规定的。

使用特权

评论回复
12
heisexingqisi| | 2017-1-24 20:15 | 只看该作者
如果此函数没有正常运行则系统会返回一个-1
这个-1是系统提供的吗,不需要用户编写吧

使用特权

评论回复
13
wahahaheihei| | 2017-1-24 20:40 | 只看该作者
一般定义了这种,如果错误系统会自动返回一个-1

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

184

主题

3014

帖子

7

粉丝