首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> 關於C++

C++ 基礎入門:常量、變量與運算符詳解

     編輯:關於C++

常量分類與書寫規範

1. 整型常量

  • 十進制:123, -456
  • 八進制:0173 (前綴 0)
  • 十六進制:0x7B (前綴 0x/0X)
  • 後綴:L/l (long), U/u (unsigned), 如 123UL

2. 實型常量 (浮點數)

  • 十進制:3.14, .5, 100.
  • 指數形式:1.23e4 (=12300), 5E-2 (=0.05)
  • 默認 double,後綴 F/f 指定 float,L/l 指定 long double。

3. 字符常量

  • 單引號:'a', '\n', '\\', '\0' (佔 1 字節,存 ASCII 值)。
  • 轉義序列:\n 換行, \t 制表, \ddd 八進制, \xhh 十六進制。

4. 字符串常量

  • 雙引號:"Hello",內存以 \0 結尾,佔長度+1 字節。
  • "" 空串佔 1 字節 (\0);"A" 佔 2 字節,'A' 佔 1 字節。

5. 符號常量

  • 宏定義:#define PI 3.14159 (預處理替換,不佔內存,無類型檢查)。
  • 常變量:const double PI = 3.14159; (有類型、有作用域、佔內存、可調試)。**強烈推薦用 const 替代宏**。

變量定義與初始化


int a;           // 未初始化,值不確定 (靜態存儲期除外)
int b = 10;      // 複制初始化
int c(20);       // 直接初始化 (C++ 風格)
int d{30};       // 列表初始化 (C++11,防窄化轉換)
const int e = 5; // 必須初始化,後不可修改

命名規則:字母/下劃線開頭,區分大小寫,避開關鍵字。

運算符優先級與結合性速查 (常用)

優先級運算符說明結合性
1 (最高)::作用域解析左→右
2++ -- + - ! ~ (type) * & sizeof一元運算符右→左
3* / %乘除模左→右
4+ -加減左→右
5<< >>移位左→右
6< <= > >=關係左→右
7== !=相等左→右
8&位與左→右
9^位異或左→右
10|位或左→右
11&&邏輯與左→右
12||邏輯或左→右
13?:條件右→左
14= += -= *= ...賦值右→左
15 (最低),逗號運算符左→右

整數除法與取模陷阱


5 / 2   = 2      // 截斷向零
-5 / 2  = -2     // C++11 規定向零截斷
5 % 2   = 1
-5 % 2  = -1     // 被除數符號決定結果符號
5 % -2  = 1
-5 % -2 = -1

公式:(a/b)*b + a%b == a 恆成立。

實戰建議

  1. 常量優先 constexpr (C++11 編譯期常量) 或 const,拒絕 #define。
  2. 變量定義即初始化,減少未定義行為風險。
  3. 混合運算時顯式轉型 static_cast<double>(a)/b 避免整數除法意外。
  4. 複雜表達式加括號提高可讀性,不依賴優先級記憶。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved