永发信息网

viod 一般用在没有返回值的函数中,但是为什么还要写return;??

答案:7  悬赏:30  手机版
解决时间 2021-03-26 08:14
  • 提问者网友:相思似海深
  • 2021-03-26 02:33
viod 一般用在没有返回值的函数中,但是为什么还要写return;??
最佳答案
  • 五星知识达人网友:野慌
  • 2021-03-26 03:57
viod 一般用在没有返回值的函数中,写return;是为了跳出函数。
return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。 return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。 如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。有时即使被调用函数是void类型 被调函数中的return也不是毫无意义的。
例如:
void f2(int i)
{
if(i > 0)
{
return ;//这样也可以,不要这一句也可以
}
else{
i = i+5;
}

}
全部回答
  • 1楼网友:行路难
  • 2021-03-26 08:17
写上return表示程序正常结束,有的地方不写也可以,建议写上return!!!
  • 2楼网友:woshuo
  • 2021-03-26 07:55
在无返回值的函数中加入RETURN可以中断函数执行,你给的这个例子加与没加都一样,因为是在函数结束时,如果是在函数中间或刚刚开始是RETURN就意义不同了。在无返回值有参数的时候
如void setBuf(TCHAR *pChBuff)
{
if(NULL == pChBuff)
{
return;
}
///处理其它事
}
  • 3楼网友:第四晚心情
  • 2021-03-26 07:04
return是为了退出该函数
在这个函数中不写也可以,但是如果你想中途退出,return可以实现
  • 4楼网友:独钓一江月
  • 2021-03-26 06:54
这只是习惯上写的,你可以不写return,也能用,而且你可以看到return后面是没有值的,意思就是返回空。
  • 5楼网友:狂恋
  • 2021-03-26 05:55
在你的这个函数里面可以不写,也可以写,但有的地方必须写,用于结束当前函数,不执行后面的代码,如:
void fun(int x)
{
if (x > 0) // 如果x>0,做完某事以后,直接返回,不再做其他事,否则顺序执行下去
{
// 做某事
return;
}
// 做其他事
}
return; 和 return 0; 是不同的,前者函数返回void,后者函数返回int,在定义函数的时候就决定了需要用哪种return
  • 6楼网友:逃夭
  • 2021-03-26 05:23
不写 return; 也可以编译通过的吧?
return ; 本身就没有返回任何东西(也就是返回空),而这个函数是不需要返回值的,因此可以这么写。
每个函数,不管返回值是不是空的,都写上 return 是好习惯。追问为什么有的还这样写return 0;和return;一个意思吗??追答不是啊。。。
return 是要和函数的返回值对应起来的。比如:
void f()
{
// 返回空
return ;
}
void f()
{
// 什么都没有 return 也可以
}
int f()
{
// 返回一整数
return 0;
}
float f()
{
// 返回一个浮点数
return 3.14;
}
char f()
{
// 返回一个字符
return 'a';
}
也就是说,什么样的函数返回值,有什么样的 return 语句。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯