指標即記憶體地址。C 語言允許用變數儲存指標,稱為指標變數。指標變數可指向基本類型、陣列、函數、甚至其他指標。
| 定義 | 含義 |
|---|---|
int *p; | 指向 int 資料,亦可指向 int arr[n] 陣列 |
int **p; | 二級指標,指向 int * 類型 |
int *p[n]; | 指標陣列([] 優先級高於 *) |
int (*p)[n]; | 二維陣列指標 |
int *p(); | 回傳 int * 的函數 |
int (*p)(); | 函數指標,指向 int func() 原型函數 |
p++、p+i 步長由指向資料類型決定,非簡單整數增減。int *p = 1000 無意義且導致崩潰。NULL。sizeof/& 表整個陣列;表達式中轉為指向首元素指標。