
int func(int array, int max);第1个参数是数组的首地址,比如你有int a[20], 那么就传a,不过必须先初始化,max表示你传入的数组的长度,即函数中对数组的 *** 作不能超过max,否则越界,返回值是实际有效的数组元素个数。(1)函数的返回值是通过函数中的return语句获得的。return语句将被调用函数中的一个确定值带回主调函数中去。
如果需要从被调用函数带回一个函数值(供主调函数使用),被调用函数必须包含return语句。如果不需要从被调用函数带回函数值,则可以不要return语句。
一个函数中可以有一个以上的return语句,执行到哪一个return语句,哪一个语句起作用。
return语句后面的括号可以要,也可以不要,如“return z;”与“return (z);”等价。return后面的值可以是一个表达式。例如:
int max(int x,int y)
{
return(x>y?x:y);
}
如果在主调函数中调用它,比如:
a=max(1,2)
那么函数max的return语句后面表达式的值就是2,也就是说max(1,2)=2,所以a=2
(2)函数值的类型。既然函数有返回值,这个值当然应属于某一个确定的类型,应当在定义函数是指定函数值的类型。例如下面是几个函数的部首:
int max(float x,float y);//函数值为整型
char letter(char c1,char c2);//函数值为字符型
double min(int x,int y);//函数值为双精度型
void change(int a);//函数值为空
(3)如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准,即函数类型决定返回值的类型。对数值型数据,可以自动进行类型转换。特别提一提void类型,如果一个函数的类型为void,那么,即使函数中有return语句且return语句中表达式的值不为空,返回值仍为空,严格满足函数类型决定返回值的类型。有返回值的函数格式为: 返回类型 函数名(参数);
没有返回值的函数格式为: void 函数名(参数);或 函数名(参数);
在定义函数时,函数体内有返回值的要用return返回相应的类型值,而没有返回值的不能用retur;语句,否则编译器会警告出错!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)