C语言函数参数问题

来源:百度知道 编辑:UC知道 时间:2024/09/25 01:19:33
函数参数一多我就迷糊了,哪位能给举个例子在带点详细解释的
参数就可以理解为函数的变量吧?
怎么没人举个实例啊? 呵呵

参数不是函数的变量,无论是从存储上来说还是使用上来说
简单的说,它和函数内部变量的区别就在于,它的值不是在函数内部赋予的,而是作为面向上级函数的接口,从上级函数那里传过来的
#include <stdio.h>
void fun(int para1,int para2)
{printf("参数1是%d,参数2是%d",para1,para2); }
main()
{
fun(3,5);
}
看见了么,它并没有在函数内部被赋值
函数的作用是实现某一功能,而参数的作用是提供实现这一个功能所需要的数据.如果说函数的车间的话,那参数就是原料.

我个人认为是可以看作是变量。
比如说
#include <stdio.h>
void fun(int a,int b,int c,int d)
{
printf("%d,%d,%d,%d",a,b,c,d);
}
main()
{
fun(3,4,5,6);
}
这里我就当fun中的 a,b,c,d 是变量,那么调用它的时候就相当把3赋值给变量a,4赋值给变量b,5赋值给变量c,6赋值给变量d,传递的过程中就相当于赋值语句。

函数的值传递,就是 左值传递(c++ primary这样命名的),是传递的一份拷贝值, 拷贝的是 从函数参数表中的值,
如下面的例子:
/*
函数功能是 让用户输入 购买苹果和梨子的钱数,
然后 利用 print函数打印出来!
*/

void print(float apple_2,float pear_2);//使用前先申明一下,参数类型必须和函数的参数类型一样,
int main()
{
float apple_1,pear_1;
printf("\n请分别输入购买苹果,和梨子的钱数\n");
scanf(