C语言有参函数的定义
发布时间:2023-05-15 12:50:47 所属栏目:语言 来源:
导读:如果函数需要接收用户传递的数据,那么定义时就要带上参数。如下所示:
dataType functionName( dataType1 param1, dataType2 param2 ... ){
//body
}
dataType1 param1, dataType2 param2 ...是参数列表
dataType functionName( dataType1 param1, dataType2 param2 ... ){
//body
}
dataType1 param1, dataType2 param2 ...是参数列表
如果函数需要接收用户传递的数据,那么定义时就要带上参数。如下所示: dataType functionName( dataType1 param1, dataType2 param2 ... ){ //body } dataType1 param1, dataType2 param2 ...是参数列表。函数可以只有一个参数,也可以有多个,多个参数之间由,分隔。参数本质上也是变量,定义时要指明类型和名称。与无参函数的定义相比,有参函数的定义仅仅是多了一个参数列表。 数据通过参数传递到函数内部进行处理,处理完成以后再通过返回值告知函数外部。 更改上面的例子,计算从 m 加到 n 的结果: int sum(int m, int n){ int i, sum=0; for(i=m; i<=n; i++){ sum+=i; } return sum; } 参数列表中给出的参数可以在函数体中使用,使用方式和普通变量一样。 调用 sum() 函数时,需要给它传递两份数据,一份传递给 m,一份传递给 n。你可以直接传递整数,例如: int result = sum(1, 100); //1传递给m,100传递给n 也可以传递变量: int begin = 4; int end = 86; int result = sum(begin, end); //begin传递给m,end传递给n 也可以整数和变量一起传递: int num = 33; int result = sum(num, 80); //num传递给m,80传递给n 函数定义时给出的参数称为形式参数,简称形参;函数调用时给出的参数(也就是传递的数据)称为实际参数,简称实参。函数调用时,将实参的值传递给形参,相当于一次赋值操作。 原则上讲,实参的类型和数目要与形参保持一致。如果能够进行自动类型转换,或者进行了强制类型转换,那么实参类型也可以不同于形参类型,例如将 int 类型的实参传递给 float 类型的形参就会发生自动类型转换。 将上面的代码补充完整: #include <stdio.h> int sum(int m, int n){ int i, sum=0; for(i=m; i<=n; i++){ sum+=i; } return sum; } int main(){ int begin = 5, end = 86; int result = sum(begin, end); printf("The sum from %d to %d is %d\n", begin, end, result); return 0; } 运行结果: The sum from 5 to 86 is 3731 定义 sum() 时,参数 m、n 的值都是未知的;调用 sum() 时,将 begin、end 的值分别传递给 m、n,这和给变量赋值的过程是一样的,它等价于: m = begin; n = end; (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |