数组名代表数组元素的地址,二维数组三维数组也这样吗

2021-03-11 10:56:24 字数 623 阅读 5034

1楼:匿名用户

同样都是数组名bai,而且数组du

名代表数组第一

zhi个元素的地址 这话说的有问题啊dao数组名代表的是回数组的首地址!答

但不同的维数的数组情况是不一样的,如二维数组int b[3][2] ;

b是数组的首地址,也是第一行的地址

b[0]是第一行第一个元素的首地址(也可以说是数组第一个元素的地址)可是从数值上来说,b和b[0]是相等的。

变量在进行赋值时,需要接收数据的变量与值变量(或常量)是相同类型才可以

回到你的问题中

int a[2]=; //一维数组

int b[1][2]=; //二维数组

int * p1=a;//一维数组对应一维指针,可以赋值int * p2=b; //二维数组 对应 ”伪“二维指针,而p2是一维指针,所以赋值时会有编译错误

”伪“二维指针 这样记比较方便,实际上应该是这样的:

int (*p2)[2] = b ; //这样才是准确的 p2是个指针,指向一个有两个int元素的数据块

2楼:匿名用户

对,不过二维数组被视为元素为一维数组的一维数组,同样地,三维数组被视为元素为二维数组的一维数组。

c语言三维数组赋值给二维数组为什么可以这样

1楼 你的数组a其实仍然是二维数组,因为你给的值显然是一个二维数组的值即1 2 3 3 2 1 2 5 6 你并没有真正做一个三维数组,所以赋给二维数组完全没问题,数组b的值仍然是像上面那样的形式 c语言怎么为一个三维数组赋值?我的这个二维数组是字符串,要求用c语言,不是c 2楼 匿名用户 ch i...

VB编程:定义5 5的二维数组,其数组元素为10到99间

1楼 匿名用户 option base 1 private sub mand1 click randomize dim intarray 5 5 as integer i as integer j as integer intevennumbercount as integer for i 1 to...

二维数组中a1和a1的值为什么都是地址

1楼 匿名用户 a 0 第0行的行地址 a 1 第1行的行地址 a 1 第一行的第一个数。 希望下面的程序可以帮到你 include include int main void printf a d t a printf a 1 d n a 1 printf a d t a printf a 1 d...