函数必须有返回值吗?

来源:百度知道 编辑:UC知道 时间:2024/05/12 17:59:07
否则不能调用吗?
能否举例说明一下?

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

例如一个求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个数和的函数 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);

函数和过程的区别之一就是函数有返回值
有些函数没有显示出返回值,但它会有一个默认的返回值

C中声明为void的函数可以不返回值。

void fun()
{