#define和const的區別

 #define是一個真常量,而const則是有編譯器判斷實現的常量,是一個假常量,在實際中,使用const定義的變量,最終還是一個變量,只是在編譯器內進行了檢查,發現有修改則報錯。

  由於編譯器在編譯期間對const變量進行檢查,因此被const修飾過的變量是可以修改的,利用指針獲取到const修飾過的變量地址,強制將指針的const修飾 去掉,就可以修改對應的數據內容。如:

 

const int nConst = 5;

int *pConst = (int*) &nConst;

*pConst = 6;

int nVar = nConst;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章