因為最近在學C指標,所以呢在這里寫一個小總結.
希望對你有一點幫助!
C指標有幾種:
1.指標 2.空指標 3.void指標 4.const指標常量
先來講講指標的概述,
指標變數的語法:
資料型別 *變數名 或者 資料型別 *變數名 == 初始值
前一個只是定義了一個 資料型別 的指標,后一個是定義了一個 資料型別 的指標 且 賦了初始值
指標變數存盤的是其他變數的地址.
在C語言中,提供有兩種指標運算子. " * "間接運算子, " & "取地址符
先來個簡單的例子了解一下:

程式的運行結果如下:

在這里我們發現: a變數的地址 == p變數的值 即 &a==p
*p==a變數的值
到這里應該清楚" * "和" & "的意思了吧!
簡單來講 *p 就是指標所指向的物件
&a就是存放 a變數的地址
空指標:
在指標定義時,如果沒有初始化,那么指標所指向物件是未定義的,也就是說該指標可能會指向一塊沒有權限訪問的記憶體.程式就無法正常運行.
所以,我們像這樣把指標初始化.

空指標就是值為 NULL的指標.
但是因為 空指標的值為NULL,所以不能把他作為值賦給其他變數.
void指標:
顧名思義,指向 void的指標 就叫 void指標.表示的是未確定型別的指標.
因為是void型別,所以void指標又稱為萬能指標,意思就是可以轉換為任意型別的指標進行使用
const常量指標:
就是以const修飾的指標,具體有以下幾種:
1.常量指標 2.常量指標變數 3.指標常量
常量指標:
語法:
const int *p;
常量指標變數:
語法:
int * const p;
指標常量:
語法:
const int * const p;
首先常量是不可更改的
所以呢剖開理解看看
常量指標就是把 int *p 定義為常量 ,所以*p不能改變,即 不能通過 *p 改變指標所指向的物件.
常量指標變數就是把 p 定義為常量,所以 p不能改變,即 不能改變指標所指向的物件.
至于指標常量,就是上兩個的結合體,既不能通過 *p 改變指標所指向的物件,也不能改變指標所指向的物件.
Over!
第(1)次修改
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/36288.html
標籤:C
下一篇:藍橋杯-三羊獻瑞
