早教吧作业答案频道 -->其他-->
C语言中指针引用二维数组元素问题假设a是一个3行4列的二维数组,请问为什么a[0]与*(a+0)是等价的,我的理解是二维数组名a既然是该数组首元素的地址,那么(a+0)也是一个地址,“*(a+0)”就
题目详情
C语言中指针引用二维数组元素问题
假设a是一个3行4列的二维数组,请问为什么a[0]与*(a+0)是等价的,
我的理解是二维数组名a既然是该数组首元素的地址,那么(a+0)也是一个地址,“*(a+0)”就是指向“(a+0)”这个地址的内容(即首个元素值).
a[0]与*(a+0),一个元素地址和一个元素内容又如何能等价~
请懂C语言的人帮忙解答,指出我的思维误区.我都为这问题冥思苦想好几天了,每次拿起书本就把该节内容看一边,就是不理解这了.
假设a是一个3行4列的二维数组,请问为什么a[0]与*(a+0)是等价的,
我的理解是二维数组名a既然是该数组首元素的地址,那么(a+0)也是一个地址,“*(a+0)”就是指向“(a+0)”这个地址的内容(即首个元素值).
a[0]与*(a+0),一个元素地址和一个元素内容又如何能等价~
请懂C语言的人帮忙解答,指出我的思维误区.我都为这问题冥思苦想好几天了,每次拿起书本就把该节内容看一边,就是不理解这了.
▼优质解答
答案和解析
(a+0)是地址没错
“*(a+0)”就是指向“(a+0)”这个地址的内容(即首个元素值)这句话也没错
因为a这个地址中放的也还是一个地址
例如:
a[3][3] = { 1 , 2 , 3
4 , 5 , 6
7 , 8 , 9 };
1的地址就是a[0], (a[0]是a[0][0],a[0][1],a[0][2]中第一个数据a[0][0]的地址,下同理)
4的地址就是a[1],
7的地址就是a[2].
然后你再把这个1、4、7组成的a[0],a[1],a[2]看做一个一维数组
那么a(也可以说是a+0)表示的就是第一个数a[0]的地址.
所以*(a+0)就是地址a中所存放的数值(即a[0]),只不过这个数值是个地址的编号罢了~ 因为地址也是一串数字啊~
你可以就用这个a[3][3]写段代码试试~ 输出 *( *(a+1) + 2 ) 看看是不是等于6~
“*(a+0)”就是指向“(a+0)”这个地址的内容(即首个元素值)这句话也没错
因为a这个地址中放的也还是一个地址
例如:
a[3][3] = { 1 , 2 , 3
4 , 5 , 6
7 , 8 , 9 };
1的地址就是a[0], (a[0]是a[0][0],a[0][1],a[0][2]中第一个数据a[0][0]的地址,下同理)
4的地址就是a[1],
7的地址就是a[2].
然后你再把这个1、4、7组成的a[0],a[1],a[2]看做一个一维数组
那么a(也可以说是a+0)表示的就是第一个数a[0]的地址.
所以*(a+0)就是地址a中所存放的数值(即a[0]),只不过这个数值是个地址的编号罢了~ 因为地址也是一串数字啊~
你可以就用这个a[3][3]写段代码试试~ 输出 *( *(a+1) + 2 ) 看看是不是等于6~
看了 C语言中指针引用二维数组元素...的网友还看了以下:
交集 由属于集合A且属于集合B的所有元素组成的集合叫做A与B的交集.对于“A∩B={x|x∈A,且 2020-04-05 …
发酵工程米酒是发酵工程产物吗我们日常生活用的产品中,不属于发酵工程产品的是()A农民自酿的米酒B绝 2020-04-27 …
微量元素是指含量在人体总重量的0.01%以下的元素,这些元素对人体的正常发育和健康起着主要作用,下 2020-05-13 …
下列元素一定是主族金属元素的是A、原子最外层有2个电子的一种金属元素B、溶点低于100℃的一种金属 2020-05-24 …
设集合A={1,2,3,4},集合B={-1,-2},设映射f:A→B.如果集合B中的元素都是A中 2020-06-05 …
属脂溶性维生素的是( )A.维生素B1B.维生素CC.维生素DD.维生素B6E.维生素PP 2020-06-07 …
下列因素中,属于川气东送管线走向所考虑的经济因素的是A.地形因素B.交通运输条件C.城市分布D.农 2020-06-15 …
一个n阶行列式,主对角线上的元素都是x主对角线以上的元素都是a,主对角线以下的元素都是-a,求次行 2020-08-02 …
人的素质是多方面的。当代青年最重要的素质是A.科学文化素质B.道德素质C.思想政治素质D.身体与心理 2020-11-07 …
设集合A={1,2,3,4},集合B={-1,-2},设映射f:A→B.如果集合B中的元素都是A中元 2020-11-18 …