c 筆記 const關鍵字

2021-10-22 17:26:35 字數 935 閱讀 2009

2.const在函式中的應用

使用const修飾指標,有兩種用法,達到兩種作用:

例程1:

int num = 10;

const int *p = #

此例子中,不代表num是乙個常量,而是不能通過指標p來修改num的值

例程2:

const int num = 10;

const int *p = #

int *p = #//錯誤

此例中,需要注意的是第三行錯誤的示例。

指向常量物件的指標必須也是常量

如果指標不加const修飾,就意味著允許通過指標修改指向的物件,與指向的常量物件相矛盾。

底層是常量,則指向它的高層必須也是常量,同樣適用於二級指標等

例程3:

int num = 10;

int *const p = #

注意const的位置,這個位置的const修飾後表示,const為常量指標,即只能指向這乙個量

例程4:

void a(const int *b);
表明了b在這個函式中是乙個常數值,即函式只能呼叫,不能修改

與形參不改變實參不同(不會報錯),這裡如果修改就如同修改常量,會報錯

比如:

const int a();
修飾返回值,意義不大

class a
使其成為常成員函式

只能作為類的成員

也是唯讀,不會修改物件本身,應對於類的指標this的呼叫

C 筆記 const關鍵字

在c 中用來修飾內建型別變數 int,float,char 巴拉巴拉之類 自定義物件,成員函式,返回值,函式引數。一.修飾普通變數 const int a 7 int b a 正確 a 8 錯誤,不能改變當乙個變數被定義為const 型別常量,便不可再次對其賦值。直接賦值,編譯器會報錯。通過指標型別...

c 筆記 const關鍵字的使用

1.關於const指標 如果關鍵字const出現在星號左邊,表示被指物為常量 如果出現在星號右邊,表示指標自身是常量 如果出現在星號兩邊,表示被指物和指標兩都都是常量。注意被指物是常量時,以下兩種寫法意義相同 const int p int const p 2.const成員函式 const成員函式...

C語言關鍵字 Const

c中const的使用 雖然這聽起來很簡單,但實際上,const的使用也是c語言中乙個比較微妙的地方,微妙在何處呢?請看下面幾個問題。問題 const變數 常量 為什麼下面的例子在使用乙個const變數來初始化陣列,ansi c的編譯器會報告乙個錯誤呢?const int n 5 int a n 答案...