指標常量和常量指標

2021-06-28 20:40:23 字數 499 閱讀 6408

int a;

int * const p = &a //指標常量,*p可以修改*p = 8;(ok)

p不可以修改 p++(error)

int a,b;

const int *p = &a;//常量指標 *p不可修改 *p = 8;(error)

p 可以修改 p = &b (ok)

還有一種

const int * const p = &a; // *p 和 p均不可改變了

關鍵要看const修飾的是誰

int const const int的寫法是一樣的

指標的話看const離誰( 是『*』 還是『指標變數名』)比較近就是修飾誰的,比如

const * 表示帶*運算物件的是常量,也就是*p 不可變 (暗示p可變,p不帶『*』 嘛)

* const 變數名 表示變數名是常量 也就是p不可變 (暗示*p可變,const沒有修飾『*「 嘛)

指標 常量指標和指標常量

const關鍵字宣告乙個常量,常量宣告後不能修改。類似的,我們可以宣告常量指標 double radius 5 double const pvalue radius pvalue 4 可以修改其中pvalue是乙個常量指標,其宣告和初始化必須在同一條語句中,後面的程式不能為其賦予新的位址。注意,雖然...

常量指標 和 指標常量

在c 的學習中,有人經常搞不清楚 常量指標 和 指標常量 這兩個概念。其實簡單一點講,常量指標 所指向的位址上的資料是常量,而 指標常量 所指向的位址是常量,位址上面的資料是可以變化的。常量指標,表述為 是常量的指標 它首先應該是乙個指標。指標常量,表述為 是指標的常量 它首先應該是乙個常量。指標常...

常量指標和指標常量

定義 具有只能夠讀取記憶體中資料,卻不能夠修改記憶體中資料的屬性的指標,稱為指向常量的指標,簡稱常量指標。宣告 const int p int const p 注 可以將乙個常量的位址賦值給乙個對應型別的常量指標,因為常量指標不能夠通過指標修改內粗資料。只能防止通過指標引用修改記憶體中的資料,並不保...