二維陣列位址的關係

2021-06-27 06:54:22 字數 1957 閱讀 2486

int a[3][4] = ;

指標所指向的資料型別加1

,那麼位址就會加上資料型別對應的位元組數

例如:&a      =       0x12ff18

&a+1    =       0x12ff48

a指向的是有

12個元素的二維陣列,占有

30h位元組的位址空間

&a[0]   =       0x12ff18

&a[0]+1 =       0x12ff28

&a[0]指向的是有

4個元素的一維陣列,占有

10h位元組的位址空間

&a[0][0]        =       0x12ff18

&a[0][0]+1      =       0x12ff1c

&a[0][0]指向的是乙個元素,占有

4h位元組的位址空間

a       =       0x12ff18

a+1     =       0x12ff28

a指向的是有

4個元素的一維陣列,占有

10h位元組的位址空間

a[0]    =       0x12ff18

a[0]+1  =       0x12ff1c

a[0]指向的是乙個元素,占有

4h位元組的位址空間

程式**:

#include int main()

; printf("a = %#x\n", a);

printf("&a = %#x\n", &a);

printf("*a = %#x\n", *a);

printf("a[0] = %#x\n", a[0]);

printf("a[0]+1 = %#x\n", a[0]+1);

printf("&a[0] = %#x\n", &a[0]);

printf("&a[0]+1 = %#x\n", &a[0]+1);

printf("*a[0] = %#x\n", *a[0]);

printf("a[0][0] = %#x\n", a[0][0]);

printf("&a[0][0] = %#x\n", &a[0][0]);

printf("&a[0][0]+1 = %#x\n", &a[0][0]+1);

// printf("*a[0][0] = %#x\n", *a[0][0]); //error c2100: illegal indirection

printf("\n****************************************===\n\n");

printf("a+1 = %#x\n", a+1);

// printf("&(a+1) = %#x\n", &(a+1)); //error c2102: '&' requires l-value

printf("&a+1 = %#x\n", &a+1);

printf("*(a+1) = %#x\n", *(a+1));

printf("*a+1 = %#x\n", *a+1);

printf("a[1] = %#x\n", a[1]);

printf("a[1]+1 = %#x\n", a[1]+1);

printf("&a[1] = %#x\n", &a[1]);

printf("&a[1]+1 = %#x\n", &a[1]+1);

printf("*a[1] = %#x\n", *a[1]);

printf("a[1][0] = %#x\n", a[1][0]);

printf("&a[1][0] = %#x\n", &a[1][0]);

printf("&a[1][0]+1 = %#x\n", &a[1][0]+1);

// printf("*a[1][0] = %#x\n", *a[1][0]);

return 0;

}

二維陣列位址

二維陣列定義 int arr 2 3 typedef p arr 3 p q for size t i 0 i 2 i printf n value 1,address 010ff770 value 2,address 010ff774 value 3,address 010ff778 value ...

cout 陣列 二維陣列的位址

c primer3.6多維陣列ia的例子,發現對於ia,和ia 0 兩者數值相同,產生了疑問,經過查閱相關資料,特此記錄。一 關於二維 高維陣列的位址 二維陣列ia int對二者 ia,ia 0 的數值是否相同進行驗證 int main cout ia endl cout ia 0 endl ret...

二維陣列的位址問題

void main printf p,p,p n str,str,str printf d,d,d n sizeof str sizeof str sizeof str system pause 二維陣列你取str,str,str的位址,竟然神奇的發現他們都是一樣的,這讓很多人很迷惑,我也是迷途中的...