鱼C论坛

 找回密码
 立即注册
查看: 1125|回复: 10

[已解决]return的问题

[复制链接]
发表于 2020-3-3 16:55:41 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include<stdio.h>
int main()
{
        printf("Hello World");
}//这里不使用return也能运行出来所以我疑惑了,这个应该是在什么情况下使用return什么情况下不使用
最佳答案
2020-3-3 17:04:13
本帖最后由 jackz007 于 2020-3-3 17:05 编辑

      return 有两个作用,第一个是结束函数调用。在函数执行过程中,如果遇到 return 语句,就会立即退出函数,返回调用处继续;第二个作用是把函数值带给调用变量,例如,如果函数 fun() 以 return 0 作为结束,那么,执行 a = fun() 后,变量 a 的值就是 0。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-3-3 16:58:27 | 显示全部楼层
一般都要写 return 0 。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 17:01:38 | 显示全部楼层
只要函数的返回类型是void的类型才不需要return
其他的都需要有return
你没加成功,可能是软件优化了,自动帮你添加,但这个并不“规范”
就好像你酒驾没被查到,没出事不代表你就合理
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-3-3 17:04:13 | 显示全部楼层    本楼为最佳答案   
本帖最后由 jackz007 于 2020-3-3 17:05 编辑

      return 有两个作用,第一个是结束函数调用。在函数执行过程中,如果遇到 return 语句,就会立即退出函数,返回调用处继续;第二个作用是把函数值带给调用变量,例如,如果函数 fun() 以 return 0 作为结束,那么,执行 a = fun() 后,变量 a 的值就是 0。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 17:15:28 | 显示全部楼层
zltzlt 发表于 2020-3-3 16:58
一般都要写 return 0 。

我试过return 1还有-1都可以运行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 17:16:30 | 显示全部楼层
当是int main()时需要用return 0;
当是void main()时不用return 0;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 21:48:52 | 显示全部楼层
还是按规范去写吧。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 22:26:57 | 显示全部楼层
你用void main就不需要return了,return是当你定义一个需要有返回值的函数的时候才会用到,比方说定义一个比较大小的函数,当比较多个数时,函数返回最大值,这个时候就用上了return。当然,如楼上所说,当你用int main时,你可以return0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 22:57:10 | 显示全部楼层
如果前面是void main()   可以不适用return   
如果是int  main  则需要
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 22:58:19 | 显示全部楼层
这里虽然可以运行  但系统会有警告  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-4 11:17:13 | 显示全部楼层
本帖最后由 jackz007 于 2020-3-4 11:18 编辑

      在 C 语言里,main() 是一个特殊的函数,这个函数是由操作系统负责定义的,有没有返回值咱们说了不算,所以,我们看到,在有些编译器中,如果写 void main() 是会报错的,规范的写法应该是 int main() 。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-15 22:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表