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

voidswap(int*x,intn){int*i,*j,temp,*p,m=(n-1)/2i=x;j=x+n-1;p=x+m;for(;i<=p;i++,j--){t... void swap(int *x,int n)
{
int *i,*j,temp,*p,m=(n-1)/2
i=x;
j=x+n-1;
p=x+m;
for(;i<=p;i++,j--)
{
temp=*i;
*i=*j;
*j=temp;
}
return;
}
例如这个空类型被调用函数,没有返回值,为什么还要写return;?????
展开
 我来答
hwd0312
推荐于2018-12-15 · TA获得超过4336个赞
知道小有建树答主
回答量:1043
采纳率:100%
帮助的人:163万
展开全部
viod 一般用在没有返回值的函数中,写return;是为了跳出函数。
return 表示从被调函数返回到主调函数继续执行,返回时可附带一个返回值,由return后面的参数指定。 return通常是必要的,因为函数调用的时候计算结果通常是通过返回值带出的。 如果函数执行不需要返回计算结果,也经常需要返回一个状态码来表示函数执行的顺利与否(-1和0就是最常用的状态码),主调函数可以通过返回值判断被调函数的执行情况。有时即使被调用函数是void类型 被调函数中的return也不是毫无意义的。
例如:
void f2(int i)
{
if(i > 0)
{
return ;//这样也可以,不要这一句也可以
}
else{
i = i+5;
}

}
terranlong
2013-01-04 · TA获得超过7293个赞
知道大有可为答主
回答量:2660
采纳率:0%
帮助的人:3953万
展开全部
在你的这个函数里面可以不写,也可以写,但有的地方必须写,用于结束当前函数,不执行后面的代码,如:
void fun(int x)
{
if (x > 0) // 如果x>0,做完某事以后,直接返回,不再做其他事,否则顺序执行下去

{

// 做某事

return;

}

// 做其他事

}

return; 和 return 0; 是不同的,前者函数返回void,后者函数返回int,在定义函数的时候就决定了需要用哪种return
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b0e28cae4
2013-01-04 · TA获得超过4016个赞
知道大有可为答主
回答量:1275
采纳率:85%
帮助的人:597万
展开全部
不写 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 语句。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6fe74e2
2013-01-04 · TA获得超过6592个赞
知道大有可为答主
回答量:1973
采纳率:100%
帮助的人:231万
展开全部
这只是习惯上写的,你可以不写return,也能用,而且你可以看到return后面是没有值的,意思就是返回空。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
周生008
2013-01-04 · TA获得超过1222个赞
知道小有建树答主
回答量:1329
采纳率:0%
帮助的人:638万
展开全部
return是为了退出该函数
在这个函数中不写也可以,但是如果你想中途退出,return可以实现
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式