指標陣列,陣列指標,函式指標,指標函式,多級指標

2021-08-10 05:14:40 字數 499 閱讀 2409

int *  a[10] ; 定義乙個指標陣列,該陣列共有10個元素,每個元素均是乙個int型指標。

int  (*a)[10]  ; 定義乙個陣列指標。該指標指向乙個含有10個元素的陣列的位址。 即指向二維陣列的指標。通常如果要修改乙個二維陣列的值時,需要定義乙個陣列指標作為函式引數。或者 int  a[10]作為形參。

int  b[10] = ;

a = b ;  編譯時此處會出錯。

int a =10 ;

int *p = &a ;

int **pp = &p ;  定義乙個二級指標,指向了乙個一級指標的位址。

**pp = 100 ; 通過二級指標修改記憶體的值。

*pp=10 ;   相當於將p指向了編號為10的這塊記憶體,p成了野指標。

函式指標:

int (*p)(int ,int ) ;  定義乙個函式指標,函式的引數為兩個int , 返回值是 int 。

要呼叫時, p = 對應的函式名即可 。

指標陣列 陣列指標 函式指標 函式指標陣列

陣列指標 指向陣列的指標,是乙個指標,其指向的型別是陣列 指標陣列 元素為指標的陣列,是乙個陣列,其中的元素為指標。例如 int a 5 這個是陣列指標。int a 5 這個是指標陣列。定義函式指標型別 int max int,int typedef int fun ptr int,int 申明變數...

C語言 指標陣列和指標陣列 函式指標和指標函式

在c語言中最令然頭疼的莫過於指標 特別是指標和陣列符號一起出現的 傻傻搞不清楚的原因主要在於運算子的優先順序沒有搞清 指標的運算子 陣列運算子,函式運算子 陣列元算符 運算優先順序和函式運算子 或者說強制改變運算順序符號 都是位於第一優先順序的 而我們的指標運算子則是第二優先順序 所以當出現 int...

指標陣列,陣列指標,指標函式,函式指標

int p 4 指標陣列。是個有4個元素的陣列,每個元素的是指向整型的指標。int p 4 陣列指標。它是乙個指標,指向有4個整型元素的陣列。int func void 指標函式。無參函式,返回整型指標。int func void 表示函式指標,可以指向無參,且返回值為整型指標的函式。右左規則 因為...