?? 數(shù)組.txt
字號:
☆指針數(shù)組的說明與使用☆
一個數(shù)組的元素值為指針則是指針數(shù)組。 指針數(shù)組是一組有序
的指針的集合。 指針數(shù)組的所有元素都必須是具有相同存儲類型和
指向相同數(shù)據(jù)類型的指針變量。
指針數(shù)組說明的一般形式為:
類型說明符*數(shù)組名[數(shù)組長度]
其中類型說明符為指針值所指向的變量的類型。例如:
int *pa[3]
表示pa是一個指針數(shù)組,它有三個數(shù)組元素, 每個元素值都是
一個指針,指向整型變量。
通常可用一個指針數(shù)組來指向一個二維數(shù)組。 指針數(shù)組中的每
個元素被賦予二維數(shù)組每一行的首地址, 因此也可理解為指向一個
一維數(shù)組。圖6—6表示了這種關(guān)系。
int a[3][3]={1,2,3,4,5,6,7,8,9};
int *pa[3]={a[0],a[1],a[2]};
int *p=a[0];
main(){
int i;
for(i=0;i<3;i++)
printf("%d,%d,%d\n",a[i][2-i],*a[i],*(*(a+i)+i));
for(i=0;i<3;i++)
printf("%d,%d,%d\n",*pa[i],p[i],*(p+i));
}
本例程序中,pa是一個指針數(shù)組,三個元素分別指向二維數(shù)組a
的各行。然后用循環(huán)語句輸出指定的數(shù)組元素。其中*a[i]表示i行0
列元素值;*(*(a+i)+i)表示i行i列的元素值;*pa[i]表示i行0列元
素值;由于p與a[0]相同,故p[i]表示0行i列的值;*(p+i)表示0行i
列的值。讀者可仔細(xì)領(lǐng)會元素值的各種不同的表示方法。 應(yīng)該注意
指針數(shù)組和二維數(shù)組指針變量的區(qū)別。 這兩者雖然都可用來表示二
維數(shù)組,但是其表示方法和意義是不同的。
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -