问2个很菜的问题 请高手来指点一下

时间:2022-08-15 21:11:05
1。实际参数和形式参数 总是糊涂(10分)
2。传递的三种方式
   值传递 引用传递 参数传递 (10分)

8 个解决方案

#1


void sum(int &a, int b)  //a和b是形参,a是传引用,b是传值
{
   a = a + b;
}

void main()
{
   int x = 1;
   sum(x, 2);  //x 和 2是实参
}

#2


&a 是什么意思?

#3


&a是表示一个引用        用引用就是直接传递数值

实际参数一般是主函数中的参数   形式参数一般是用户自定义函数中的参数   函数的调用是通过实际参数向形式参数传递值来实现的

#4


&a是C++里面的用法,在这里表示传入的是一个引用

实际参数就是在参数调用的时候真正被引用的那个变量,而形式参数就是在定义函数的时候用的那些变量

#5


http://expert.csdn.net/Expert/topic/2808/2808071.xml?temp=.7375757


看这个就知道引用与不引用的区别

#6


你这两个问题都是与属于函数调用的基本问题:
1、在函数调用时,必须传递给函数某些在函数体中将要完成某些功能的信息,在函数调用的时候,用于接收信息(也就是说定义于函数接口中的参数)我们称之为形式参数;而用于发送信息的具体值我们称之为实际参数;例如:int max(int x,int y){//......}其中的x,y是形式参数,而在调用max函数时如:int a,b=10,c=5;a=max(b,c)其中的b,c是实际参数;
2、对于一个变量在内存中的值,有两种方法来访问:第一种是直接访问,也就是说通过直接访问代表这块内存的标识(即变量名);第二种是通过访问用于指代这块内存地址的指针或引用。指针可以多次赋值且不必定义的时候就对其进行初始化,而引用则必须在定义的对其进行初始化且不能改变它的指向,没有对引用的操作,一切操作均是针对于引用变量所指代的那个变量。理解普通变量、指针变量和引用的概念在C++程序设计中是至关重要的。回到正题,普通变量在函数调用中是按值传递(也就是说把实参的值拷贝给形参),由于形参变量的生命期只限于这个函数调用结束,这意谓着这个函数的调用将不会对实际参数进行任何修改;指针和引用则不然,由于它们所指代是这个变量的地址,所以对它们进行任何的改动将会使得实参的改动。举个例子:
  int a,b=10,c=5;
  int *d=&b;//定义一个指针变量指向于变量b
  int *e=&c;//定义一个指针变量指向于变量c
  a=max(b,c);//按值传递参数,注意由于形参和实参所处的内存不是同一块,所以可以同名
//第一种调用max函数的原形为int max(int,int);
  a=max(d,e)//或a=max(&b,&c);按指针传递,max函数原形为int max(int *,int *);传递给max的实参是变量b,c的地址或指向于b,c的指针;这是max函数的第二种调用
  第三种调用和第一种方法一样,所不同的是max函数的形参是int形的引用参数即int max(int &,int &);
区别变量、指针变量和引用也是C++程序设计的难点,我说了这么多,希望对问题有所解决。

#7


你只要记住,在C语言中只有值传递,指针也传递的是一个值。而引用不过是对指针的另一种包装形式。

#8


记住,值传递不会被传递的参数的原值,
而引用传递,也是值传递的一种,只是
它传递的是地址。c语言概念一定要掌握
清楚。

#1


void sum(int &a, int b)  //a和b是形参,a是传引用,b是传值
{
   a = a + b;
}

void main()
{
   int x = 1;
   sum(x, 2);  //x 和 2是实参
}

#2


&a 是什么意思?

#3


&a是表示一个引用        用引用就是直接传递数值

实际参数一般是主函数中的参数   形式参数一般是用户自定义函数中的参数   函数的调用是通过实际参数向形式参数传递值来实现的

#4


&a是C++里面的用法,在这里表示传入的是一个引用

实际参数就是在参数调用的时候真正被引用的那个变量,而形式参数就是在定义函数的时候用的那些变量

#5


http://expert.csdn.net/Expert/topic/2808/2808071.xml?temp=.7375757


看这个就知道引用与不引用的区别

#6


你这两个问题都是与属于函数调用的基本问题:
1、在函数调用时,必须传递给函数某些在函数体中将要完成某些功能的信息,在函数调用的时候,用于接收信息(也就是说定义于函数接口中的参数)我们称之为形式参数;而用于发送信息的具体值我们称之为实际参数;例如:int max(int x,int y){//......}其中的x,y是形式参数,而在调用max函数时如:int a,b=10,c=5;a=max(b,c)其中的b,c是实际参数;
2、对于一个变量在内存中的值,有两种方法来访问:第一种是直接访问,也就是说通过直接访问代表这块内存的标识(即变量名);第二种是通过访问用于指代这块内存地址的指针或引用。指针可以多次赋值且不必定义的时候就对其进行初始化,而引用则必须在定义的对其进行初始化且不能改变它的指向,没有对引用的操作,一切操作均是针对于引用变量所指代的那个变量。理解普通变量、指针变量和引用的概念在C++程序设计中是至关重要的。回到正题,普通变量在函数调用中是按值传递(也就是说把实参的值拷贝给形参),由于形参变量的生命期只限于这个函数调用结束,这意谓着这个函数的调用将不会对实际参数进行任何修改;指针和引用则不然,由于它们所指代是这个变量的地址,所以对它们进行任何的改动将会使得实参的改动。举个例子:
  int a,b=10,c=5;
  int *d=&b;//定义一个指针变量指向于变量b
  int *e=&c;//定义一个指针变量指向于变量c
  a=max(b,c);//按值传递参数,注意由于形参和实参所处的内存不是同一块,所以可以同名
//第一种调用max函数的原形为int max(int,int);
  a=max(d,e)//或a=max(&b,&c);按指针传递,max函数原形为int max(int *,int *);传递给max的实参是变量b,c的地址或指向于b,c的指针;这是max函数的第二种调用
  第三种调用和第一种方法一样,所不同的是max函数的形参是int形的引用参数即int max(int &,int &);
区别变量、指针变量和引用也是C++程序设计的难点,我说了这么多,希望对问题有所解决。

#7


你只要记住,在C语言中只有值传递,指针也传递的是一个值。而引用不过是对指针的另一种包装形式。

#8


记住,值传递不会被传递的参数的原值,
而引用传递,也是值传递的一种,只是
它传递的是地址。c语言概念一定要掌握
清楚。