我要揭露「常量指標」與「指向常量的指標」

2021-10-01 06:28:57 字數 502 閱讀 6006

最近在看c++ primer,接觸到 常量指標 與 指向常量的指標 兩個概念。有疑問的同學一定要看完這篇!!!

我個人總結了下,再回頭看書本,發現書本的概念描述,還是最接近本質的。廢話不多說,直接上!

首先,丟擲乙個問題:什麼時候使用 指向常量的指標?

比如有乙個常量 const int i=0,怎樣才能儲存這個常量的位址呢?

這時候,就要用到「指向常量的指標」了,const int *p=&i;當然,這貨還可以儲存非常量的位址!

第二個問題:如何讓指標始終指向乙個 非常量?

第三個問題:如何讓指標始終指向乙個 常量?

解決第二個問題,需要定義乙個常量指標,示例如下:

int i=0;

int *const p=&i;

常量指標p存放的i的位址一直不會改變,但可以任意修改i的值。

現在來解決第三個問題,其實是第

一、二個問題的綜合!

我們先定義乙個常量 

const int i=0;

常量指標與指向常量的指標

在日常交流中,當乙個 c 程式設計師說 常量指標 const pointer 時,其實他表達的意思往往是 指向常量的指標 pointer to const 真不幸,這是兩個完全不同的概念。t pt new t 乙個指向t的指標 const t pct pt 乙個指向const t的指標 t cons...

常量指標與指向常量的指標

以下所有 測試的ide為code blocks16.01 常量指標是指指標變數本身不可以改變的指標,但是可以通過指標變數修改所指向的變數,常量指標不能指向常量 int number1 10 int number2 20 const int number 30 int const pnumber1 n...

常量指標與指向常量的指標

1 include2 void main 編譯結果 hello.c in function main hello.c 8 2 error assignment of read only location p1 p1 2 企圖改變a的值 非法 hello.c 9 2 error assignment ...