C语言中如果函数定义为了void 类型能不能用return返回值
如:voidequal(intx,inty){return(x==y);}这样可以吗是不是会错????...
如:
void equal(int x,int y)
{
return(x==y);
}
这样可以吗 是不是会错???? 展开
void equal(int x,int y)
{
return(x==y);
}
这样可以吗 是不是会错???? 展开
8个回答
展开全部
return的功能是终止一个函数
函数类型是void类型,也是可以加return的
但是其后面不能加任何数值 表示函数到此为止
# include "stdio.h"
void main(void)
{
printf("这是return之前的语句\n");
return;
printf("这是return之后的语句\n");
}
/*
在vc++6.0中的输出结果:
------------------------
这是return之前的语句
Press any key to continue
------------------------------
*/
函数类型是void类型,也是可以加return的
但是其后面不能加任何数值 表示函数到此为止
# include "stdio.h"
void main(void)
{
printf("这是return之前的语句\n");
return;
printf("这是return之后的语句\n");
}
/*
在vc++6.0中的输出结果:
------------------------
这是return之前的语句
Press any key to continue
------------------------------
*/
2012-11-14
展开全部
viod会告诉函数不返回任何值,也就是说你声明了一个函数是不需要返回值的,但是你又return 了一个值,这样就会矛盾了。在上面那个自定义函数中,楼主可以把void换成 int,也就是让函数返回一个整形,或者楼主不愿意改void的话可以在函数中用printf来替换return.
楼主应该是刚开始学习c语言,在这里说一下,只要能够坚持下去,c语言一定能够学好的
楼主应该是刚开始学习c语言,在这里说一下,只要能够坚持下去,c语言一定能够学好的
更多追问追答
追问
但是我如果想从函数中出来可以写return吧
如:
void XX()
{
----------;
---------;
if()
return;
------------;
}
追答
如果楼主想从函数中跳出来,return 是可以的,为什么楼主声明了函数返回值是void这次却能用return,而上面那个不能呢,因为你上面那个返回了值,也就是return(x==y);,下面这个return没有返回任何值,在没有返回任何值的情况下,return有结束当前函数的功能。不知道这样说楼主能不能理解。
当然扩展一下:除了能用return;来表示跳出当前函数之外exit()也是可以的。
如果想从do-while、for、while循环语句中跳出来可以使用break函数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以有返回语句,这样写:return;但不能返回任何值。 x==y这个表达式是有值的,为1或0;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不对,void 指的就是返回类型为空,不能有返回值,如果你就是想返回的话把void 变成bool
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
void类型无返回值,如果返回会报错,你可以将void改为int。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询