導言:const在c++**中占有很重要的地位,它可以讓程式設計師告訴使用者及編譯器什麼變數是不用改變的,以及用const代替#define的定義,避免有時因預編譯器出現忽略#define定義而帶來的錯誤…
常量指標:
當const出現在*號的左邊,稱為常量指標;例:
int a =10;
int b =10;
//const修飾的是指標,指標指向可以改,指標指向的值不可以更改
const
int* p1 =
&a;
p1 =
&b;//正確
//*p1 = 100; 報錯
**特點:**不能對常量指標指向的物件的內容進行修改,可以修改常量指標的指向。
指標常量:
當const出現在*號的右邊,稱為指標常量;例:
//const修飾的是常量,指標指向不可以改,指標指向的值可以更改
int*
const p2 =
&a;//p2 = &b; //錯誤
*p2 =
100;
//正確
**特點:**不能對指標常量的指向進行修改,可以修改指標常量指向物件的內容。
當*左右兩邊均有const時:
//const既修飾指標又修飾常量
const
int*
const p3 =
&a;//p3 = &b; //錯誤
//*p3 = 100; //錯誤
**特點:**既不能夠修改指向又不能夠修改指向所對應的內容。
int
* ptr;
// 指向int的指標
const
int* ptr;
// 指向const int的指標,一般叫做常量指標
int*
const ptr;
// 指向int的指標常量。即指標的值是乙個常量。
const
int*
const ptr;
// 指向const int的指標常量
const
int*
*const ptr;
// 指向常量指標的指標常量
最後兩個有點繞人@_@… C 指標常量 常量指標和常指標常量
1 指標常量 如果在定義指標變數時候,指標變數前用const修飾,被定義的指標變數就變成了乙個指標型別的常變數,指標型別的常變數簡稱為指標常量。格式如下 資料型別 const 指標變數 變數名 修飾符const與指標變數緊鄰,說明指標變數不允許修改,既然指標變數的值不能修改,所以一定要在定義的時候給...
c 指標常量 和 常量指標
指標常量 指向常量的位址,不允許改變指向位址,指向位置的變數值能被改變 p不可以變 const p 常量指標 指向常量的指標,指標指向的物件不能通過這個指標來修改,可是仍然可以通過原來的宣告修改,也就是說量指標可以被 賦值為變數的位址,之所以叫做常量指標,是限制了通過這個指標修改變數的值 cont ...
C 指標常量和常量指標
首先在c 目前我看到的型別宣告方式,該變數的型別都是由最後幾個字來確定,前面是定語,修飾詞。有其他不同的歡迎指出,共同學習 比如 指標陣列 是陣列,陣列裡存的是指標。陣列指標 是指標,指標指向陣列。所以指標常量 首先是常量,然後是乙個指標,即是該指標是乙個常量,指標的值即位址不會變。常量指標 首先是...