变量和基本内容
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