变量和基本内容
C++基本内置类型
C++定义了一套含有
算术类型和空类型在内的基本数据类型.算数类型: 字符, 整型数, 布尔值 和 浮点数
空类型: 空类型不对应具体值,如当函数不返回任何值的时空类型作为返回类型.
算术类型
算数类型分为两类: 整形(包括字符,整型数和布尔值) 和 浮点型
| 类型 | 含义 | 最小尺寸 |
|---|---|---|
int |
整型 |
16bit |
| long | 长整型 | 32bit |
| long long | 长整型 | 64bit |
| float | 单精度浮点数 | 6位有效数字 |
| double | 双精度浮点数 | 10位有效数字 |
| long double | 拓展精度浮点数 | 10位有效数字 |
| bool | 布尔类型 | 未定义 |
| short | 短整型 | 16bit |
| char | 字符 | 8bit |
| wchar_t | 宽字符 | 16bit |
| char16_t | Unicode字符 | 16bit |
| char32_t | Unicode字符 | 32bit |
算术类型所占内存的大小在不同类型的机器上有所差别,上表展示了C++所规定的最小值,同时允许编译器赋予这些类型更大的尺寸.
bool型的取值是 真(true) 或 假(false)
除去布尔型和拓展的字符外,其他整型可以划分为signed(有符号的)和unsigned(无符号的).
字符型被分为三种: char, signed char, unsigned char; char类型的具体表现方式只有两种,signed char和unsigned char,而char实际上表现为二者中的一种,具体表现方式由编译器决定.
类型转换
//eg:
bool b = 22; //b的值为真
int i = b; //i的值为1
i = 3.14; //i的值为3
double pi = i; //pi的值为3.0
unsigned char c = -1; //c的值为255(假设char占8bit)
signed char c2 = 256; //c的值是未定义的
切勿混用signed和unsigned,如果同一个表达式运算结果为负值,则会自动转换为无符号类型.
字面值常量
整型和浮点型:
整型: 字面值数据类型: int long long long等,十进制 八进制(O) 十六进制(Ox)
浮点型: 字面值数据类型: double