/*輸出二維陣列的有關資料和值*/
#include
#include
/*在c語言中,一維陣列與二維陣列在指標的使用上有所不同
*1.在一維陣列a[n]中,a表示陣列的首位址,a[i]表示特定的元素
*2.在二維陣列a[m][n]中,a表示陣列的首位址(陣列中陣列的首位址或整個儲存空間的首位址),a[i]表示第i行的首位址
*3.c語言中 a[i]與*(a+i) 等價*/
intmain
(void);
printf
("%d,%d\n"
,a,*a)
;//0行首位址和0行0列元素位址
printf
("%d,%d\n"
,a[0],
*(a+0)
);//0行0列元素位址
printf
("%d,%d\n"
,&a[0]
,&a[0]
[0])
;//0行首位址和0行0列首位址
printf
("%d,%d\n"
,a[1
],a+1)
;//1行0列元素位址和1行首位址
printf
("%d,%d\n"
,&a[1]
[0],
*(a+1)
+0);
//1行0列元素位址
printf
("%d,%d\n"
,a[2],
*(a+2)
);//2行0列元素位址
printf
("%d,%d\n"
,&a[2]
,a+2);
//2行首位址
printf
("%d,%d\n"
,a[1][
0],*
*(a+1)
);//1行0列元素的值,同*(*(a+1)+0)
printf
("%d,%d\n"
,*a[2]
,**(a+2)
);//2行0列元素的值
printf
("%d,%d,%d\n"
,a,*a,
**a)
;//test
return0;
}
除錯結果
6422048
,6422048
6422048
,6422048
6422048
,6422048
6422064
,6422064
6422064
,6422064
6422080
,6422080
6422080
,64220809,
917,17
6422048
,6422048
,1
二維陣列 二維陣列和指標
include using namespace std int main 如上面這段程式所示,通過取位址符 指標 p 獲得了變數 a 的位址,那麼解引用符 就可以從 p 中得到變數 a 的值。也就是說,p a和 p a是等價的。p 是變數 a 的位址,從 p 中就可以取出 a 的值。反之,能從 p ...
二維陣列輸出的方法
問題 有若干個學生的成績 每個學生有4門課程 要求在使用者輸入學生序號 學生序號從0號算起 要求在使用者輸入學生序號以後,能輸出該學生的全部成績。方法一 常規輸出二維陣列的方法 include int main int argc,char argv printf please enter num i...
有關二維陣列的指標問題
建立在以下資料上的思考 二維陣列 在概念上是二維的,有行和列,但在記憶體中所有的陣列元素都是連續排列的,它們之間沒有 縫隙 以下面的二維陣列 a 為例 int a 3 4 在概念上儲存的過程 01 231011 1213 2021 2223 在記憶體中儲存的過程 01 231011 1213 202...