二維數(shù)組的地址表示方式 如數(shù)組:int a[3][3] = {1,3,5,7,9,11,13,15,17}; 等價(jià)于:int a[3][3] = {{1,3,5},{7,9,11},{13,15,17}}
注意: 每一行都對應(yīng)一個(gè)行地址,二維數(shù)組的地址就是第一行地址 二維數(shù)組名字本來就是地址即: 行地址: a是第一行地址 a+1是第二行地址 a+2是第三行地址 列地址: a[0]+0第一列地址 a[0]+1第二列的地址 a[0]+2第三列的地址
具體項(xiàng)目地址如: a[1][2]的地址:為以下三種表示方式 1. a[1]+2; 2. *(a+1)+2 3. &a[1][2] a[1][2]里面的值:為一下三種表示方式 4. *(a[1]+2) 5. ((a+1)+2) 6. a[1][2]
a[]或(a+1)//行地址a[]+i //行地址加列地址Test代碼如下所示:
#include<stdio.h>int main(void){ int nums[3][3] = {1,3,5,7,9,11,13,15,17}; /**第一行地址*/ 二維數(shù)組的指針遍歷方式: 1:下表發(fā)去遍歷二維數(shù)組 2;列地址去遍歷: 根據(jù)二維數(shù)組在內(nèi)存中按行去連續(xù)分配內(nèi)存空間的,所以可以通過列指針去遍歷二維數(shù)組;對于二維數(shù)組來說; *a就是第一行第一列的地址*(a+0)+0;代碼能夠run,如果有需要的話,可以直接拉下來run一下,看看結(jié)構(gòu)體數(shù)組是怎么進(jìn)行初始化操作和使用的。謝謝大家的訪問,如有寫的不好的地方,希望大家能夠及時(shí)的提出來,謝謝觀看
新聞熱點(diǎn)
疑難解答