函数必须有返回值吗?

否则不能调用吗?
能否举例说明一下?

同意楼上观点
不是必须要返回值,

例如一个求2个数和的函数 sum

要返回值时
double sum(double x,double y)
{
return x+y;
}

不要是可以这样定义 例2
void sum(double x,double y,double *z)
{
*z = x+y;
return;
*z = x*y;
}

return 只是发生在你提前结束函数
例2中 *z = x*y; 不被执行

区别是要返回值一般可以在内存中直接分配空间,
不要的话自己要先分配好空间,传指针进来
例2中 使用函数
int x, y, z;
x=3;
y=5;
sum(x,y,&z);
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-06-26
同意楼上观点
不是必须要返回值,

例如一个求2个数和的函数 sum

要返回值时
double sum(double x,double y)
{
return x+y;
}

不要是可以这样定义 例2
void sum(double x,double y,double *z)
{
*z = x+y;
return;
*z = x*y;
}

return 只是发生在你提前结束函数
例2中 *z = x*y; 不被执行

区别是要返回值一般可以在内存中直接分配空间,
不要的话自己要先分配好空间,传指针进来
例2中 使用函数
int x, y, z;
x=3;。
第2个回答  推荐于2018-05-07
函数和过程的区别之一就是函数有返回值
有些函数没有显示出返回值,但它会有一个默认的返回值本回答被网友采纳
第3个回答  2005-11-10
不一定,C中的void型函数即可以没有返回值。
第4个回答  2005-11-10
C中声明为void的函数可以不返回值。

void fun()
{
return;
}

但是建议依然写return
相似回答