99问答网
所有问题
C语言中怎么将数组作为函数传递?初学,求解
如题所述
举报该问题
推荐答案 2020-01-28
属于地址传递,在函数里修改的话,将直接影响调用方的数值。这是因为数组名代表这个数组的首地址,不过是静态不可更改的而已。在函数里用引用[i]下标时,就是找到这个数组第i号元素的地址进行修改的。所以是第于是地址传递。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/zzevjjtXvOW7zzjeOB.html
其他回答
第1个回答 2020-03-17
函数原型
type
fun
(type
(name*)[size])
type是你要定义的类型,fun是函数名,name是在函数中二维数组的名字,
size是二维数组第2维的长度。
这样调用这个函数只需要把二维数组函数名传递就可以了。
相似回答
在
C语言中,数组作为
参数,是
怎样
在
函数
之间
传递
的啊
??
答:
数组名就是数组的首地址。因此在数组名作函数参数时所进行的传送只是地址的传送,
也就是说把实参数组的首地址赋予形参数组名
。形参数组名取得该首地址之后,也就等于有了实在的数组。实际上是形参数组和实参数组为同一数组,共同拥有一段内存空间。
C语言中如何将
二维
数组作为函数
的参数
传递
答:
在C语言中可以用二维数组作为实参或者形参
。1、函数中用二维数组作为形参,函数声明中可以指定所有维数的大小,也可以省略第1维的维数如:void f(int array[3][10]); //正确 void f(int array[][10]); //正确上面的两种二维数组形参表示都是正确的。2、函数中用二维数组作为形参,不能把第...
c语言怎么将数组作为函数
参数传入?
答:
//数组作为函数参数,可以省略元素个数 //数组作为函数参数,传递是整个数组的地址
,修改了函数形参数组元素的值,会影响到外面的实参数组 void change(int array[]){ printf("array ==%p\n",array);array[0] = 100;} int main(){ int ages[6] = {10,11,13,15,11,18};printf("array =...
C语言中,数组作为
参数
,怎样
在
函数
之间
传递的?
答:
很简单的,
数组作为函数参数传递的时候只要是数组名就可以了
,因为数组名本身就是数组的首地址 .给个程序看看 include<stdio.h> define N 3 int array[N][N];void main(){ //在主函数内声明被调函数 void convert(int array[][3]);int i,j;printf("输入数组:\n");for(j=0;j<N;j++)f...
c语言函数怎么
传
数组
答:
C
和C++都没有办法传
数组,
只能传“指针”,指针和
数组的
差别就在于
函数
内无法检测数组的尺寸
C语言中,数组做函数
参数
如何
才能按值
传递?
答:
传数组给一个
函数,
数组类型自动转换为指针类型,因而传的实际是地址。void func(int array[10])void func(int array[])void func(int *array)所以以上三种函数声明完全等同。实际情况是
,数组做
参数,完全无法按值
传递
。这是由
C
/C++
函数的
实现机制决定的。下一个问题是:为什么偏要按值传递呢?当要...
关于
c语言中
的结构体
数组作为函数
参数
传递
的
答:
1、结构体数组传给指针,实质上是不可能的,本质上传的是数组首地址,根据偏移来操作
数组,
这样看起来好像是真在操作数组一样。就和普通指针一样使用,只不过它是结构体数组。2、例程:typedef struct Student{ char name[10] ; int age ;}Student;#define LEN 10 //print all Student infoma...
c语言中怎么
用二维
数组作为函数
参数
答:
二维
数组作为函数
参数,实参可以直接使用二维数组名,在被调用函数中对形参数组定义可以指定所有维数的大小,也可以省略第一维的大小说明,如:它们是合法且等价,也可以使用如下形式:但不能省略第二维的大小,如下面的定义是不合法的,编译时会出错:因为从实参
传递
来的是数组的起始地址,如果在形参中不...
在
c语言中怎么将数组
直接
作为函数
的参数 比如 int f(int a[10]) 在...
答:
要
把数组作为函数的
参数,在函数定义的时候,就要在参数列表设置指针,因为数组名就是数组的头指针,在调用时直接把数组名作为函数的参数就好了 比如 int fun(int *a){ //...} int main(){ int a[10];int result=fun(a);return 0;} 这样就好了 通常为了在函数中确保访问数组不越界,在参数...
大家正在搜
c语言数组作为参数传入函数
c语言数组作为函数参数
c语言函数怎么调用数组
c语言数组作为函数返回值
c语言函数形参为数组
c语言函数参数可以是数组吗
C语言数组截断函数
c语言函数数组调用
c语言用函数输入数组