亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

指針-二維數組的辨析

系統 1961 0

首先,我們來先定義一個二維數組


int a[3][4]= {{1,3,5,7},{9,11,13,15},{17,19,21,23}};


a是數組名,a是一個3行4列的數組。


a數組包含3行元素,即a[0],a[1],a[2]。而每一個行元素又是一個一維數組,它包含4個元素(即4個列元素),


例如,a[0] ?所代表的一維數組又包含4個元素。a[0][0],a[0][1],a[0][2],a[0][3],可以認為二維數組是數組的數組,


即二維數組a是有3個數組所組成的。




我們可以知道,a是二維數組名,它也可以表示二維數組首元素的地址,


現在的首元素不是一個簡單的整型元素,而是由4個整型元素組成的一維數組,


因此,a代表的是首行(即序列為0的行)的首地址,a+1代表序列為1行的首地址。


如果二維數組首地址為2000,一個整型數據占4個字節,則a+1的值應該是2000+4*4 = 2016(因為第0行有4個整型數據)。


a+1 指向 a[1],或者說 a+1的值是 a[1]的首地址。


a+2 的值代表 a[2]的首地址。



a[0],a[1],a[2]既然是一維數組名,而C語言又規定了數組名代表數組首元素的地址,


因此,a[0]代表一維數組a[0] 中第0列元素的地址,即 &a[0][0].


也就是 a[1] 的值是 &a[1][0],a[2]的值是&a[2][0].



a[0] ?是一維數組名,那么一維數組中序號為1的元素的地址顯然用a[0]+1 來表示了。


如果a[0] 的地址是2000,則a[0]+1 = 2000+1*4 = 2004?


那么 a[0]+2 則應該等于 &a[0][2]?


a[0] +3 = &a[0][3]



我們在前面提到過,a[0] 和 *(a+0)等價。


那么 a[1] 和*(a+1) 等價。


a[i] 和 *(a+i) 等價了。



因此 a[0]+1 和 *(a+0) + 1 都是&a[0][1]


二維數組中,第一維數組的值表示的是第二維數組的地址。



所以 a[1] +2 和 *(a+1)+2 的值都是 &a[1][2]



進一步分析,欲得到a[0][1] 的值,用地址法如何表示呢?


既然 a[0]+1 和 *(a+0)+1 是 a[0][1]的地址,那么*(a[0]+1) 就是 a[0][1]的值了,


同理,*(*(a+0)+1) 或 *(*a+1)也就是 a[0][1] 的值。


*(a[i]+j) 或 *(*(a+i)+j) 是a[i][j] 的值。。



*(a+i) ?和 ?a[i] 是等價的。


?

    #include <stdio.h>
int main(){
     int a[3][4] = {1,3,5,7,9,11,13,15,17,19,21,23};
     printf("%d,%d\n",a,*a);
     printf("%d,%d\n",a[0],*(a+0));
     printf("%d,%d\n",&a[0],&a[0][0]);
     printf("%d,%d\n",a[1],a+1);
     printf("%d,%d\n",&a[1][0],*(a+1)+0);
     printf("%d,%d\n",a[2],*(a+2));
     printf("%d,%d\n",&a[2],a+2);
     printf("%d,%d\n",a[1][0],*(*(a+1)+0));
     printf("%d,%d\n",*a[2],*(*(a+2)+0));
     return 0;

}
  
?

?

?

?

?

指針-二維數組的辨析


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久视频精品36线视频在线观看 | 欧美成人天天综合在线视色 | 日本欧美一区二区三区乱码 | 视频在线国产 | 国产成人高清一区二区私人 | 亚洲国产日韩欧美 | 亚洲国产成人综合精品2020 | 国产精品毛片一区 | 伊人.com| 国产资源福利 | 久草在线在线观看 | 四虎影院黄色 | 全部免费的毛片在线看青青 | 久久伊人一区二区三区四区 | 伊人午夜| 国色天香成人网 | 国产日本欧美亚洲精品视 | 日韩不卡毛片 | 涩涩www在线观看免费高清 | 狠狠色婷婷综合天天久久丁香 | 亚洲成a人一区二区三区 | 国产亚洲综合久久 | 尹人久久久香蕉精品 | 一区二区视频免费看 | 91在线亚洲综合在线 | 9999人体做爰大胆视频 | 真实国产乱弄免费视频 | 欧美一级艳片视频免费观看 | 湿湿影院在线观看 | 国产伦理一区 | 亚洲一区中文字幕在线观看 | 伊人久久免费 | 9191精品国产费久久 | 亚洲一区精品视频在线 | ww亚洲ww亚在线观看 | 99秒拍福利大尺度视频 | 色老头老太做爰视频在线观看 | 999精品视频在线 | 日韩在线视频免费播放 | 久久这里| 亚洲成在人线中文字幕 |