老調調:const和指針

int const *p;
指向int型只讀變量的指針

const int *p;
指向int型只讀變量的指針,與第一個相同

int * const p;
指向int型變量的只讀指針

const int * const  p;
指向int型只讀變量的只讀指針

const * int p;
const int const *p;
很明顯,這是錯的

由上可以這樣總結,const表示是隻讀變量,還是隻讀指針變量,關鍵看const是在*和變量名之間呢,還是在它們外面,如果const做了第三者,那麼指的是一個只讀的指針變量,否則,就是一個只讀的普通變量。

const修飾的變量在定義的時候需要初始化,不進行初始化是會編譯出錯的。

除了const修飾符以外,還有volatile, static,類似的情況

請批評指正

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章