C++ 的字面常數 (literal constant) 依基本內建型態 (primitive built-in type) 分類有
- 整數字面常數 (integer literals)
- 浮點數字面常數 (floating-point literals)
- 布林字面常數 (Boolean literals)
- 字元字面常數 (character literals)
- 字串字面常數 (string literals)
整數字面常數
凡是以數字出現的都為十進位的 (decimal) 整數型態 (integral type) 的字面常數,如
1234 65 963 0
利用前綴可以將整數常數表示為八進位 (octal) 或十六進位 (hexadecimal)
前綴 | 種類 |
---|---|
0 | 八進位 |
0x, 0X | 十六進位 |
如
065 //等同十進位數字53 077 //等同十進位數字63 0x65 //等同十進位數字101 0xff //等同十進位數字255
利用後綴可以標明整數為 long 型態,也就是長整數,或是標明為無正負號整數
後綴 | 種類 |
---|---|
l, L | 長整數 |
u, U | 無正負號整數 |
浮點數
凡是以帶小數點的數字都為浮點數型態 (floating-point type) 的字面常數,如
0.125 22.69896 101.002 33.
利用後綴可以標明浮點數的種類,如
後綴 | 種類 |
---|---|
f, F | float |
l, L | long double |
浮點常數也可以用科學記號的方法來表示,如
1.125e-1 3.521e4 5.1203E2 1e2
字母 e 前後分成兩部份,如第一個數字
e 之前的 1.125 是標準化後的數字, e 之後的數字則為 10 的次方數,因此,這個數字會等於 1.125×10-1 。
布林字面常數
布林字面常數為 true 或 false 兩者之一, true 表示邏輯上的「真」, false 則是邏輯上的「假」。
字元字面常數
凡是以單引號夾住的單一符號都是字元字面常數,如
'a' '%' 'S' '3' ']' ' '
C++ 中可以直接使用 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 | 垂直定位符號 |
\\ | 印出反斜線 |
\? | 印出問號 |
\' | 印出單引號 |
\" | 印出雙引號 |
字元字串字面常數
字元字串字面常數 (character string literals) 為用雙引號 " " 圍起來的 ASCII 字元,如
"Hello" "333-3333" "My Game.." "mmmh"
由於字串 (string) 使用的非常頻繁,因此實際上字串屬於字元陣列 (array) ,可以用陣列的方式處理字串。字串是以 null 字元 (null character) 結尾,因此編譯器會在這樣的字元陣列結尾自動加上 '\0' ,也就是 ASCII 的 null 字元。
另有一種寬字串字面常數,這是在雙引號前加上字首 L ,如
L"Hello" L"333-3333" L"My Game.." L"mmmh"
寬字串字面常數為常數寬字元 (constant wide character) 的型態組成的字元陣列,因此寬字串字面常數的結尾為型態為寬字串的 null 字元。
中英文術語對照 | |
---|---|
字面常數 | literal constant |
基本內建型態 | primitive built-in type |
整數字面常數 | integer literals |
浮點數字面常數 | floating-point literals |
布林字面常數 | Boolean literals |
字元字面常數 | character literals |
字串字面常數 | string literals |
十進位的 | decimal |
整數型態 | integral type |
八進位 | octal |
十六進位 | hexadecimal |
浮點數型態 | floating-point type |
跳脫序列 | excape sequence |
字元字串字面常數 | character string literals |
字串 | string |
陣列 | array |
null 字元 | null character |
常數寬字元 | constant wide character |
您可以繼續參考
基本概念
標記
基本資料型態
相關目錄
回 C++ 快速導覽
回 C++ 教材
回首頁
參考資料
C++ reference
cplusplus.com
Cprogramming.com C++ Tutorial
C++ Primer, Fourth Edition, Stanley B. Lippman...
本文於 2013 年 1 月更新
沒有留言:
張貼留言