define與const的區別

2021-05-10 13:49:25 字數 602 閱讀 5479

#define

定義的其實是乙個字面常量的名字,在程式中可以把這個名字等價於字面常量使用,在編譯時會被編譯器替換為該字面常量。使用這種方式,只能達到提高程式可讀性的效果,但是安全性不能得到保證。

const

語句的語法格式可以看出,const

語句支援為常量指定型別,編譯器在編譯**時將其型別進行安全檢查。另外,使用const

定義的符號常量有自己的記憶體位址,編譯器為其分配了儲存空間。

注:在可能的情況下,盡量使用const

方式定義符號常量。

const 與 define的區別

在c程式中,const的用法主要有定義常量 修飾函式引數 修飾函式返回值等3個用處 在c 程式中,它還可以修飾函式的定義體,定義類中某個成員函式為恆態函式,即不改變類中的資料成員 1 const 有資料型別,而巨集沒有資料型別,編譯器可以對前者進行型別安全檢查,而對後者只進行字元替換,沒有型別安全檢...

const與define的區別

const與define的區別 1 編譯器處理方式不同 define巨集是在預處理階段展開。const常量是編譯執行階段使用。2 型別和安全檢查不同 define巨集沒有型別,不做任何型別檢查,僅僅是展開。const常量有具體的型別,在編譯階段會執行型別檢查。3 儲存方式不同 define巨集僅僅是...

const與define的區別

來自 程式設計師面試寶典第五版歐立奇 const操作大回顧 int b 500 const int a b 情況1 int const a b 情況2 int const a b 情況3 const int const a b 情況4 對於情況1和2 a都是常量,a是變數可以改變 改變方法 1 in...