青岛前进船厂官网:函数必须有返回值吗?

来源:百度文库 编辑:神马品牌网 时间:2024/05/09 04:59:55
否则不能调用吗?
能否举例说明一下?

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

例如一个求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()
{
return;
}

但是建议依然写return

不一定,C中的void型函数即可以没有返回值。