SeeFire 发表于 2021-3-18 20:25:54

这个return 0为什么报错?

这里为啥不能有return 0 呢? 能不能把void改成int?

jackz007 发表于 2021-3-18 20:51:28

本帖最后由 jackz007 于 2021-3-18 20:54 编辑

      是否改 void 为 int 完全根据需要,请楼主回答,return 的这个 0 有什么意义?为什么一定要写这个 return 0?难道少写一句代码不好吗?

SeeFire 发表于 2021-3-19 08:34:17

jackz007 发表于 2021-3-18 20:51
是否改 void 为 int 完全根据需要,请楼主回答,return 的这个 0 有什么意义?为什么一定要写这个...

没意义,也不一定非得写它。但我想知道的是为啥会报错?我担心在我用到这个return 0的时候,它还会报错。

jackz007 发表于 2021-3-19 09:16:57

本帖最后由 jackz007 于 2021-3-19 09:18 编辑

SeeFire 发表于 2021-3-19 08:34
没意义,也不一定非得写它。但我想知道的是为啥会报错?我担心在我用到这个return 0的时候,它还会报错。

void printbook()
      一切都是因为你把函数的返回值类型定义成了 void ,也就是无返回值,这个时候再写上 return 0,是不是就自相矛盾了?

SeeFire 发表于 2021-3-19 11:06:09

jackz007 发表于 2021-3-19 09:16
一切都是因为你把函数的返回值类型定义成了 void ,也就是无返回值,这个时候再写上 return...

原来如此,如果是这样的话 那我把返回值类型改成int 里面写一个return 0;应该是没毛病的吧。

jackz007 发表于 2021-3-19 11:35:54

SeeFire 发表于 2021-3-19 11:06
原来如此,如果是这样的话 那我把返回值类型改成int 里面写一个return 0;应该是没毛病的吧。

      是的。

Minecraft程序猿 发表于 2021-3-19 12:07:07

void类型的返回值就是不返回任何值,不用写return

连帅帅 发表于 2021-3-19 17:44:20

不是,我咋越听越糊涂,返回值类型不是根据你的需求而定的吗?听版主的意思好像是为了使用return 0而把void改成了int,搞不懂,搞不懂,或者,你想用return的话,可以单用return;表示结束本段程序的意思!

SeeFire 发表于 2021-3-19 19:28:49

连帅帅 发表于 2021-3-19 17:44
不是,我咋越听越糊涂,返回值类型不是根据你的需求而定的吗?听版主的意思好像是为了使用return 0而把void ...

{:10_266:}尴尬。。。我表达能力不好 可能把问题搞复杂了,我来重新捋一下吧:开始,return 0 报错,因为void函数是不能有返回值的;然后,先不考虑有没有把返回值改成int 的必要,只是单纯的想试一下:把函数的返回值改成int,函数体里面加个return 0是否合法。结果是可以的。我得到的结论是:只要函数返回值类型和return对应上即合法。

连帅帅 发表于 2021-3-22 15:25:29

SeeFire 发表于 2021-3-19 19:28
尴尬。。。我表达能力不好 可能把问题搞复杂了,我来重新捋一下吧:开始,return 0 报错,因为 ...

是的,理解的很对!
我顺着网线去找你{:5_97:}
页: [1]
查看完整版本: 这个return 0为什么报错?