int age = 39;
int a = 34;
//第一種用法適合於保護age的值不被修改。
const int *pt = &age; //定義乙個指標常量,不能用pt修改age的值,但可以改變pt指向的位址。pt = &a;
//*pt = *pt + 5; 錯誤的做法,*pt是乙個常量,
//第二種用過,保護pt指向的位址不被修改。
int * const pt = &age; //合法用過,修改了pt指向的位址。
//pt = &a; 非法操作,試圖修改pt指向的位址。
age = 90;
*pt = *pt + 3; //可以修改*pt的值,age的值也跟著改變。
//第三種 以上兩者都不能改變。
const int *const pt = &age; //指向常量的常指標,不能修改pt的位址和指向的常量值。
printf("%d\n", *pt);
printf("%d\n", age);
引用於指標的不同
1 表示方式不同
2 宣告引用時必須進行初始,而不能像指標那樣可以先宣告再賦值。
指標和引用,const 指標和const 引用
指標和引用是在使用中經常弄混淆的兩個概念。引用 reference 為物件起了另外乙個名字,用符號 表示。name,例如 int i 1024 int ref i 一般在初始化變數時,初始值會被拷貝到新建立的物件中,然而定義引用時,程式把引用和它的初始值繫結 bind 在一起,而不是將初始值拷貝給引...
指向const的指標和const指標
指向const的指標 int gorp 16 int chips 12 const int p snack gorp 其中p snack指向乙個const int。p snack 20 不被允許,p snack的值為const,禁止修改p snack指向的值,p snack chips 可以執行,p...
C和指標 const指標
一,入門 const 指標 指標指向的內容不能變,指標可以改變指向 指向const的指標 指標不可以改變指向,指標指向內容可以變 include stdio.h int main 二,深度解析 大致說來其可分為三種情況 const修飾指標,const修飾引用,const修飾指標的引用.const修飾...