指標和const分析

2021-06-26 21:35:15 字數 659 閱讀 5830

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修飾...