C中關於const的總結

2021-07-23 09:42:28 字數 1146 閱讀 5517

1、常變數

const  int  a=3;//用const宣告整型變數a的值為3,且a的值不能改變。

定義常變數的同時必須對其進行初始化。

只能用指向常量的指標來指向常變數,而不可以用普通指標指向常變數。

int main()

const int a=3;   //正確,定義並初始化

const int b;     //errorc2734: 「b」: 如果不是外部的,則必須初始化

常量物件

b=10;   // error c3892: 「b」: 不能給常量賦值

int*p2;

p2=&a;// error c2440: 「=」: 無法從「const int *」轉換為「int *」轉

換丟失限定符

2、const指標

2.1指向常量的指標變數

定義指向常量的指標變數的形式為:

const  型別名 *指標變數名

經過這種定以後,不允許通過指標變數改變它指向的物件的值。

指標的指向可以是普通變數,也可以是常變數。

如果指標的指向是普通變數,仍可以通過變數名來更改變數值。

如果指標的指向是常變數,則也不可以通過變數名來更改變數值。

int main()

int a=3;

const int *p=&a;

*p=10 ;  //error c3892: 「p」: 不能給常量賦值

const int b=10;

constint *p1=&b;

b=11;  //error c3892: 「b」: 不能給常量賦值

*p=11; // error c3892: 「p」: 不能給常量賦值

2.2常指標

指定指標變數為常指標變數。指標初始化後不可以改變。

int a=3;

int b=10;

int * const p=&a;

p=&b;// errorc3892: 「p」: 不能給常量賦值

2.3指向常量的常指標

int a=3;

int b=10;

const int * const p=&a;

p=&b;//不合法

*p=10;//不合法

a=10;//合法,直接改變a的值,不通過指標p

C 中的const總結

這幾天看了c 程式設計思想,想把const的用法給總結一下 const的幾種用法如下 一.用做值替代.1 用來定義常量如 const int a 10 二.指標.1 指 const char p hello char const p hello 這兩種結果是一樣的,只是形式上不一樣.const 資料...

c 中的const總結

1.const用來定義符號常量時要注意 const 型別 name value 型別 const name value 符號常量宣告時就要賦初值,而且在程式中不能改變它的值 2.const定義常引用 const 型別 引用名 比如 void display const int r 常引用做形參時,所...

關於C 中const的知識點總結

在程式開發過程中,需要一些保持不變 無法被修改的量。c 中可以用const進行修飾。注意事項 const int buffer size 錯誤,宣告時沒有進行初始化 錯誤 m 使用初始化列表初始化const常量 democlass democlass 檔案1 const int my size 51...