C++ 变量、字面量和常量
本文介绍 C++ 中的变量、常量和字面量。
C++ 变量
在编程中,变量是保存数据的容器。
每个变量都应该被赋予一个唯一的名称(标识符),以便程序能访问到对应的内存中的数据。例如,
int age = 14;
这里, age
是 int
数据类型的变量,我们为它分配了一个整数值 14
。
注: int
数据类型表明变量只能被赋予整数值。同样,如果我们必须存储小数和指数,我们可以使用 double
数据类型。
变量的值可以更改的。例如:
int age = 14; // age is 14
age = 17; // age is 17
变量的命名规则
- 变量名只能包含字母、数字和下划线
_
。 - 变量名不能以数字开头。
- 变量名不能是关键字。例如,
int
是用于表示整数的关键字。 - 变量名可以以下划线开头。但是,这不被认为是一种好的做法。
- 变量名不应以大写字符开头。
**注意:**我们应该尝试为变量赋予有意义的名称。例如, firstName
比 fn
更好。
C++ 字面量
字面量是用于表示固定值的数据,它们可以直接在代码中使用。例如: 1
, 2.5
, 'c'
等。
常用的字面量包括:整数、浮点数、字符、字符串、转义序列等。
整数字面量
整数字面量是没有任何小数或指数部分的数字。C++ 中有三种类型的整数字面量:
- 十进制(基数为 10)
- 八进制(基数为 8)
- 十六进制(基数 16)
例如:
- 十进制:
0
、-9
、22
等 - 八进制:
021
、077
、033
等 - 十六进制:
0x7f
、0x2a
、0x521
等
在 C++ 编程中,八进制数字以 0
开头,十六进制数字以 0x
开头。
浮点数字面量
浮点数字面量是具有小数形式或指数形式的数字。例如:
-2.0
0.0000234
-0.22E-5
字符字面量
字符字面量是通过将单个字符括在单引号中来创建的。例如: 'a'
, 'm'
, 'F'
, '2'
, '}'
等。
转义序列
有时,在 C++ 编程中需要使用无法键入或具有特殊含义的字符。例如换行(回车)、制表符、问号等。
有时,在 C 语言编程中需要使用无法键入或具有特殊含义的字符。例如:换行(回车)、制表符、问号等。为了使用这些字符,需要用到转义序列。
转义序列 | 说明 |
---|---|
\b |
退格 |
\f |
换页 |
\n |
换行 |
\r |
回车 |
\t |
水平标签 |
\v |
垂直标签 |
\\ |
反斜杠 |
\' |
单引号 |
\" |
双引号 |
\? |
问号 |
\0 |
空字符 |
字符串字面量
字符串字面量是用双引号括起来的字符序列。例如:
举例 | 说明 |
---|---|
"good" |
字符串常量 |
"" |
空字符串常量 |
" " |
1 个空格的字符串常量 |
"x" |
具有单个字符的字符串常量 |
"Hello\n" |
字符串后跟着一个换行 |
C++ 常量
const
关键字是一个类型标识符,标识其后面的变量是一个常量,其值不能被修改。例如,
const int LIGHT_SPEED = 299792458;
LIGHT_SPEED = 2500 // Error! LIGHT_SPEED is a constant.
在这里,我们使用关键字 const
来声明一个名为 LIGHT_SPEED
的常量。如果我们试图改变 LIGHT_SPEED
的值,我们会得到一个错误。