00问答网
所有问题
当前搜索:
二维数组名a代表什么
C语言中的
二维数组名是
一个二重指针吗?
答:
不
是
二级指针p也可以解释为指针的指针,即p内保存的值实际上还是一个指针,计算:p的值实际上是一个指针值,那么 *(*p)即二级指针指向的最终值 对于
二维数组a
[2][2],a也是一个地址,并且这个值也等于a[0],也等于a[0[0]的地址,即&a[0][0],由此看来对a取地址的值是一个变量值(不...
C语言中定义了一个
二维数组
比如A[10][5],那么A[i]
代表
着
什么
意思?
答:
A[i]也是一个数组, 如果我们把
二维数组
看成是一个矩阵的话(C语言是以行优先存储的),那么A[i]就是第i行的第一个元素的地址
C语言中,定义一个
二维数组a
[3][3],&
a表示什么
意义?
答:
表示数组
转为指针时的首地址
...c语言中,例如一个
二维数组a
[3][4],则a与a[0]
代表
的意思一样吗?a...
答:
题主还是不理解指针。char str[][10]={"ok","good"},*p;这个定义里str相当于一个二维指针,而p
是
一维指针。
二维数组
在内存中按行存储,所以可以说整个二维数组包含两个一维数组,也就是两行,第0行是“ok”,第一行是“good”。 "ok"和"good"的首地址分别为(一维指针)str[0]和str[1],...
c语言
二维数组
定义一个二维数组 a[2][2];scanf("%s",a[1]);
是什么
...
答:
就
是
将字符串 b拷贝到
数组a
中,这是一个复制函数,在string 头文件有定义,所以你可以查阅它的使用方法 那个
二维数组
就相当于 它的每个元素又是一维数组,上例相当于 有2个一维数组,每个数组又含有两个元素,所以a[1]就是第二个一维数组的首地址,可以用来输入字符串 ...
对于
二维数组
,有行优先顺序和
什么
两种不同的存储方式
答:
二维数组A
[m][n],这是一个m行n列的二维数组。设a[p][q]为A的第一个元素,即二维数组的行下标从p到m+p,列下标从q到n+q,按“行优先顺序”存储时则元素a[i][j]的地址计算为:LOC(a[i][j]) = LOC(a[p][q]) + ((i − p) * n + (j &...
c++求解释下面式子中*((
a
+1)[1])=*(*((a+1)+1))怎么来的
答:
二维数组名应理解为一个行指针。在表达式a+1中,数值1的单位应
是
4×2个字节,而不是2个字节。赋值语句p=a;是不合法的,因为p和a的基类型不同。同样,对于
二维数组名a
,也不可以进行a++,a=a+i等运算。3)二维数组元素的地址二维数组元素的地址可以由表达式&a[i][j]求得;也可以通过每行的...
二维数组名是
不是一个“指针”?
答:
1,无论
是
一维,二维或N维数组,数组名就是一个指针常量,它
代表数组
元素在内存中的首地址。2,
二维数组名
不占存储空间的,如1,数组名只是一个指针常量,打个比方,你的名字指向你这个人,但是你的名字就是人吗?显然不是。数组名也是这个意思。对于你的提问中:在程序里,所有数组都必须是先定义...
c语言
二维数组
里(a+i)[j]
表示
的是地址还是值?
答:
(a+i)[j]
表示
地址。a[i]表示第i行的首地址。a[i]+j表示第i行j列元素的地址。(a[i]+j)
代表
i行j列元素的值。
int a[2][2]={{1,2},{3,4}},那*(a+1)
代表什么
?
答:
对于
二维数组
来说,例如a[x][y],在空间结构上,x
表示
行,y表示列。所以*(a+i)表示的是第i行的行首地址,所谓行首地址,也就是该行的数组成员的首地址。是可以等同的视为&a[i][0]的。所以,这里的*(a+1)
代表
第一行的数组成员的首地址。第一行数组成员为{3,4},所以*(a+1)也就指向&...
棣栭〉
<涓婁竴椤
3
4
5
6
8
7
9
10
11
12
涓嬩竴椤
灏鹃〉
其他人还搜