回覆列表
-
1 # 匯姐聊程式語言
-
2 # 控制不當提前
int array【10】;int *p = array;只要不改變指標p的值,指標p就可以當作陣列array來使用。從這一點來看陣列名就是一個指標常量。所以二維陣列可以寫成int(*p)【10】的形式,理解成p是一個指標,它指向的是一個一維陣列,這個一維陣列有10個int元素。在傳參的時候只需要傳遞指標p就行了。
-
3 # 程式設計師黃老師
這是指標中比較容易混淆的一些地方!
首先,這個指標指向一個二維陣列,並且這位二維陣列有4列!
不要問我怎麼知道的,語法的東西,非常死,記住就好了!
以下幾種對比起來一起記憶:
int *p ; //指向 一個整數,或者指向一維陣列
int **p ; //指標的指標
int *p[4] ; //一維陣列,每個元素都是 int *
int (*p)[4]; //指向一個二維陣列,並且這位二維陣列有4列
int ( * p)(); //函式指標,這個函式返回int,無引數
記住這幾種,指標就搞定了!
int(*p)[4]是陣列的指標(指標是整型的)
比如說一個指標,它指向一個數組(指向四個int型別的元素)
也有int*p[4]這種:表示指標的陣列,一維數組裡的四個指標。