C++ 速查手冊

2.4 - 字面常數

凡是直接寫出來的數值 (value) 就是字面常數,基本內建型態整數 (integer) 、浮點數 (floating-point number) 、布林 (Boolean) 、字元 (character) 等都有字面常數。

以數字出現的都是十進位整數字面常數,例如

1234
65
963
0

直接寫出來的數字型態為 int ,其他整數型態還有 shortlong

利用前綴可以將整數常數表示為八進位 (octal) 或十六進位 (hexadecimal)

前綴 種類
0 八進位
0x, 0X 十六進位

065 // 等同十進位數字 53
077 // 等同十進位數字 63
0x65 // 等同十進位數字 101
0xff // 等同十進位數字 255

利用後綴可以標明整數為 long 型態,也就是長整數,或是標明為無正負號整數

後綴 種類
l, L 長整數
u, U 無正負號整數

帶小數點的數字就是浮點數,如

0.125
22.69896
101.002
33.

直接寫出來的浮點數型態為 double ,其他浮點數型態還有 float

利用後綴可以標明浮點數的種類,如

後綴 種類
f, F float
l, L long double

浮點數也可以用科學記號的方法來表示,如

1.125e-1
3.521e4
5.1203E2
1e2

1.125e-1 = 1.125×10-1

至於布林 bool 的「真」就是關鍵字 true 或是非 0 的整數,「假」就是關鍵字 false 或是整數 0 。

字元 char 則是以單引號圍起來的單一符號,如

'a'
'%'
'S'
'3'
']'
' '

char 可以直接使用 ASCII 編碼的符號,也就是在英文鍵盤上直接打出來的符號,此外 ASCII 也可以用 8 進位或 16 六進位的表示方式。 8 進位須以反斜線開頭,其後接 8 進位數字,如

'\141' // 與 'a' 相同
'\45'  // 與 '%' 相同
'\123' // 與 'S' 相同
'\63'  // 與 '3' 相同

16 進位則以 \x 開頭,其後接 16 進位數字,如

'\x61' // 與 'a' 相同
'\x25' // 與 '%' 相同
'\x53' // 與 'S' 相同
'\x33' // 與 '3' 相同

有些不可見字元被稱為跳脫序列 (excape sequence) ,可用反斜線 \ 加上代表該字元的符號來表示,以下是完整列表

跳脫序列的字元 功能
\a 響鈴
\b 倒退鍵
\f 跳頁
\n 新列
\r 歸位符號
\t tab 鍵
\v 垂直定位符號
\\ 反斜線
\? 問號
\' 單引號
\" 雙引號

寬字元 wchar_t ,字面常數為在單引號前加上 L ,例如

L'A'
L'a'

C++11 增加兩個 Unicode 字元型態,分別是 char16_tchar32_t ,字面常數為在單引號前加上 Uchar32_t ,而 uchar16_t ,例如

U'A' // char32_t
u'a' // char16_t

相關教學影片

上一頁 2.3 - 運算子
回 C++ 速查手冊首頁
下一頁 2.5 - 註解
回 C++ 教材
回程式語言教材首頁