《 外贸网

  • 首页
  • 你的位置:首页

    采用指针变量作为形参

    来自:自媒体   发布日期:2024.05.19

  • c语言的形参可以设为指针型的如 int *a ,但还可以设为 int &a 想问...
  • 答:int *a 是用指针变量做形参.int &a 是用引用做形参.区别如下:用指针的话是间接方式访问传进来的地址对应的变量的内存空间.如果是用引用的话,当然c里没有引用的概念, 只c++引进的一个概念.引用是变量的别名 , 所以跟直接访问变量本身一样, 只是换个名字而已, 实质是对传进来的变量本身操作, 而并...

  • C语言。,。。编程。。题目:采用指针形变量作为形参,编写一个实现两个...
  • 答:include <stdio.h> void swap(int *a,int *b){ int t;t = *a;a = *b;b = t;} void main (){ int a,b,c;scanf("%d%d%d",&a,&b,&c);if(a<b)swap(&a,&b);if(a < c)swap(&a,&c);if(b < c)swap(&b,&c);printf("从小到大:%d,%d,%d\n",a,b,c);} ...

  • 指针变量能只能作为函数的形参不可以作函数的实参对还是错
  • 答:错,指针变量既可以作为函数的形参,也可以作函数的实参。当数组名作函数的参数时,传递到是数组的起始地址,形参是用来接受从实参传递过来的实参数组的地址的。因此,形参应该是一个地址变量(只有指针才能存放地址)。数组名就是数组的首地址,实参向形参传递数组名实际上就是传送数组的地址,形参得到该地...

  • C++,const型指针变量做形参实参变量的问题
  • 答:应该是指:指向常对象的指针变量 这样的话,应该是如下的情况:1、允许形参和实参都是const型的指针变量 2、允许形参和实参都是非const型的指针变量 3、允许形参是const型指针变量,而实参是非const型指针变量 4、不允许形参是非const型的指针变量,而实参是const型的指针变量。(原因在于指向非const型...

  • 为什么指针变量和数组名都可以当形参或者实参?求详解
  • 答:p是变量,能存储地址, 而 数组x是地址常量 //都是被看成地址,只不过一个是变量,一个是常量 至于为什么都能被当成参数 就好比调用函数fun(3); fun(x) 常量变量都可以。形参的话写成x[]这样的形式是为了表明指针是指向数组。//只是为了清晰,实质形参都是指针。而实参就是指针和数目名都可以...

  • 指针变量作形参改变实参值吗???
  • 答:函数内 做了指针地址的交换: t = m; m = n; n = t; m 和 n 的地址 在函数内变了。但调用语句 处的地址 不会变化。可以添加打印语句,检验地址:void swap(float *m,float *n){ float *t;printf("3--%p %p\n",m,n);t = m; m = n; n = t;printf("4--%p %p\n",...

  • 请问C++中,用数组作为函数形参和用指针作为函数形参,有什么不同?_百度...
  • 答:1 Sum(num);2 Sum(p+2,10);这就有区别了,因为num数组首地址它不能变化,但是此时p指向了数组的第三个元素,而且后面的那个10也是可以改变的,所以说用指针作为形参的时候要带一个int n 表示你要处理的数的个数,所以说用指针作为形参的话会给你一种假象,它的确是指向的数组的某个元素(...

  • 在c语言中指针做形参为什么要用&
  • 答:&有多个解释。1.用在声明语句时,如 int A;int &a=A;表示a为A的引用,也叫别名,两者其实是一个东西。引用在其声明时被初始化。2.用在变量前,如 int A;int*a=&A;表示取地址。形参分三种,值传递,指针传递,引用传递 在很多时候三种传递方式都可以满足需求,但引用传递效率更高,当然...

  • 指针数组做形参,实参是什么
  • 答:指针数组的实质是数组,只不过数组元素中存的是指针变量而已。数组作为函数形参进行传递是实际传递的是指向该数组的指针,所以说实参应该是数组名(也就是数组首元素首地址,数组名只可以做右值,也就是数组首元素首地址,传地址也就是传指针了)。

  • 请问c语言中形参为指针是为设么实参有时加&有时不加,求高手解答。_百度...
  • 答:再说指针形参,假设两个自定义函数:int func1(int *p){……}//指向int类型的变量的指针做形参 int func2(int m){……}//int类型的变量做形参 void main(){ int a=0,*b,c;b=&a;c=func1(b);//或者你也可以写c=func1(&a);因为此时需要提供一个专门于int类型地址的实参,&a一定是...