C指標之二維陣列的運算和指標

2021-10-07 05:56:50 字數 852 閱讀 3114

int a[2][5] = , };

printf("a[1][3] = %d.\n", a[1][3]);

printf("a[1][3] = %d.\n", *(*(a+1)+3));

//int *p1 = a; // 型別不匹配

//int **p2 = a; // 型別不匹配

// 指標指向二維陣列的陣列名

int (*p3)[5]; // 陣列指標,指標指向乙個陣列,陣列有5個int型別元素

p3 = a; // a是二維陣列的陣列名,作為右值表示二維陣列第一維的陣列

// 的首元素首位址,等同於&a[0]

p3 = &a[0];

printf("a[0][3] = %d.\n", *(*(p3+0)+3));

printf("a[1][4] = %d.\n", *(*(p3+1)+4));

// 指標指向二維陣列的第一維

//int *p4 = &a[0]; // 不可以

int *p4 = a[0]; // a[0]表示二維陣列的第一維的第乙個元素,相當於是

// 第二維的整體陣列的陣列名。陣列名又表示陣列首元素

// 首位址,因此a[0]等同於&a[0][0];

int *p5 = &a[0][0];

printf("a[0][4] = %d.\n", *(p4+4));

int *p6 = a[1];

printf("a[1][1] = %d.\n", *(p6+1));

二維陣列和指標 和指標陣列,陣列指標

2007 09 12 19 45 7842人閱讀收藏 舉報 二維陣列和指標 用指標表示二維陣列元素。要用指標處理二維陣列,首先要解決從儲存的角度對二維陣列的認識問題。我們知道,乙個二維陣列在計算機中儲存時,是按照先行後列的順序依次儲存的,當把每一行看作乙個整體,即視為乙個大的陣列元素時,這個儲存的二...

二維陣列 二維陣列和指標

include using namespace std int main 如上面這段程式所示,通過取位址符 指標 p 獲得了變數 a 的位址,那麼解引用符 就可以從 p 中得到變數 a 的值。也就是說,p a和 p a是等價的。p 是變數 a 的位址,從 p 中就可以取出 a 的值。反之,能從 p ...

二維指標和二維陣列

二維指標和二維陣列有三種形式 1,type ptr 2,type ptr或者type prt 3,type prt 三種形式意思相近,也有區別。首先三種形式都能表示二維的資料結構。1,type ptr 表示乙個指向指標的指標 但是在一開始宣告的時候 type ptr ptr到底指向幾個指標是不知道的...