在 c++ 中,有兩種簡單的定義常量的方式:
使用 #define 巨集定義。
使用 const 關鍵字。
使用 #define 預處理器定義常量的形式如下:
#define identifier value
舉個例子:
#include
#define length 10
#define width 5
intmain()
經過編譯後:
使用 const 字首宣告指定型別的常量,如下所示:
const type variable = value;
還是以剛才的例子舉例:
#include
intmain()
編譯結果是一樣的
p.s.
一般情況下把常量定義為大寫字母形式
巨集定義是字元替換,沒有資料型別的區別,同時這種替換沒有型別安全檢查,可能產生邊際效應等錯誤;
const常量是常量的宣告,有型別區別,需要在編譯階段進行型別檢查
巨集定義是乙個"編譯時"概念,在預處理階段展開,不能對巨集定義進行除錯,生命週期結束與編譯時期;
const常量是乙個"執行時"概念,在程式執行使用,類似於乙個唯讀行資料
巨集定義是直接替換,不會分配記憶體,儲存與程式的**段中;
const常量需要進行記憶體分配,儲存與程式的資料段中
void f1 (
)void f2 (
)
巨集定義可以通過#undef來使之前的巨集定義失效
const常量定義後將在定義域內永久有效
voidf1(
)
巨集定義不能作為引數傳遞給函式
const常量可以在函式的引數列表**現
C 學習日記 04 基礎運算
c 支援一下這些算術運算子 名稱 符號示例1加法 x y2減法 x y3乘法 x y4除法 x y5求餘 x y 加法 加法是從乙個數中加上另乙個數的運算,也就是求和 int x 80 8 cout x 輸出88減法 減法是從乙個數中減去另乙個數的運算 int x 88 8 cout x 輸出80乘...
C 基礎 常量
1 定義 常量是不可變的值,在編譯時是已知的,且在程式的生命週期中不會改變。2 特點 1 常量定義時必須賦初值。2 常量定以後不能被修改。3 基本語法 1 定義 const readonly 資料型別 變數名 例如 類中 public const string path 方法中 const stri...
Linux基礎學習04
man man 選項 命令快捷鍵 作用上箭頭 上移一行 下箭頭下移一行 pgup 向上翻頁 pgdn 向下翻頁 g移動到第一頁 g移動到最後一頁q退出 n當搜尋到字串時,向下搜尋字串 字串 從當前頁向上搜尋字串 字串 從當前頁向下搜尋字串 n與n搜尋方法相反 幫助級別 級別作用1 檢視命令的幫助 2...