一、先看一組定義
1.乙個整型數 int a;
2.乙個指向整型數的指標 int *a;
3.乙個指向指標的指標,它指向的指標指向乙個整型數 int **a;
4.乙個有5個整型數的陣列 int a[5];
5.乙個有5個指標的陣列,該指標指向乙個整型數 int *a[5];
6.乙個指向有5個整型數陣列的指標 int (*a)[5];
7.乙個指向函式的指標,該函式有乙個整型引數並返回乙個整型數 int (*a)(int);
8.乙個有5個指標的陣列,該指標指向乙個函式,該函式有乙個整型引數並返回乙個整型數 int (*a[5])(int);
總的來說:
指標陣列:指標的陣列,表示乙個陣列,並且陣列的每乙個元素都是指標型別。
陣列指標:陣列的指標,表示乙個指標,並且是指向陣列的指標。
二、幾道筆試題
1.int **a[3][4],這個陣列佔據多大空間
解析:這是乙個二位的3*4大小的指標陣列
每個指標佔4個位元組,該陣列共有3*4個元素
結果:4*3*4=48個位元組
2.未完待續……
指標與陣列複習
可用指標變數來訪問陣列中任一元素,通常將陣列的首位址稱為陣列的指標,而將指向陣列元素的指標變數稱為指向陣列的指標變數。使用指向陣列的指標變數來處理陣列中的元素,不僅可使程式緊湊,而且還可提高程式的運算速率。1 一維陣列與指標 1.1陣列指標 陣列的首位址稱為陣列指標。若定義整型陣列a 5 系統為陣列...
指標與陣列,指標陣列 陣列指標
int a 10 print n a p,a p a,a print n a 1 p,a 1 p a 1,a 1 a做乙個指標,步長為4,指向乙個元素,a做乙個指標,步長為40,指向乙個維陣列 int b 3 4 print n b p,b p,b p b,b,b print n b 1 p,b 1...
陣列 指標陣列與陣列指標
一 陣列型別 int a 10 printf a d,a 1 d n a,a 1 printf a d,a 1 d n a,a 1 輸出結果 2 陣列元素的首位址是常量,不能修改,這是為了釋放記憶體空間所必需的,否則找不到釋放記憶體空間的首位址了 3 定義乙個陣列型別 定義陣列型別的格式如下 typ...