整数类型 | |||||
基本的整数类型:int | |||||
按符号分 | 有符号的(signed)----->默认是有符号的可以省略 | 无符号的(unsigned) | |||
按照数据范围分 | 短整数(short) | 长整数(long) | 长长整数(long long) | ||
C++标准没有规定每种数据类型的字节数和取值范围,它只是规定它们之间的字节数大小顺序的满足 | |||||
整数类型它们之间的字节数大小顺序的满足 | (signed/undigned)sitend char ≤ (unsigned)short int ≤(unsigned) int ≤ (unsigned)long int ≤ long long int |
字符类型 | |
容纳单个字符的编码 | 实质上存储的也是整数 |
当我们要存储字符的时候首选char类型,它是字符类型是单字节的数据类型里面正好存放一个字符的编码。 |
字符串类型 | |
字符串常量 | 也就是在双引号里面的一串字符 |
字符串变量 | C++基本类型中没有字符串变量 |
采用字符数组存储字符串(C风格的字符串) | 我们把双引号里面的字符串还有使用字符数组存放的字符串变量都称作C风格的字符串,C风格的字符串在C++中已经不鼓励使用了,那么C++用什么来存放字符串呢,在C++标准卡里面有一个String类我们可以用这个类的对象来存放字符串。 |
浮点数类型 | |
单精度 | float |
双精度 | double |
扩展精度 | long double |
同样C++标准也没有规定它们各自占多少字节,只是规定了它们之间的字节数大小顺序的满足 | |
浮点数类型之间的字节数大小顺序的满足 | float ≤ double ≤ long double |
布尔类型 | ||
取值范围 | true(真) | false(假) |
常用来表示关系比较、相等比较或逻辑运算的结果 |
基本数据类型占的字节数、表示范围(并不是所有系统里面都是这样的,所以这只是特定的编译环境下它是这样的一种规定) | ||
类型名 | 长度(字节) | 取值范围 |
bool | 1 | false 、true |
char | 1 | -128 ~ 127 |
signed char | 1 | -128 ~ 127 |
nusigned char | 1 | 0 ~ 255 |
short (signed short) | 2 | -32768 ~ 32767 |
unsigned short | 2 | 0 ~ 65535 |
int (signed int) | 4 | -2^31 ~ 2^31-1 |
unsigned int | 4 | 0 ~ 2^32-1 |
long (signed long) | 4 | -2^31 ~ 2^31-1 |
unsigned long | 4 | 0 ~ 2^32-1 |
long long | 8 | -2^63 ~ 2^63-1 |
unsigned long long | 8 | 0 ~ 2^64-1 |
float | 4 | 绝对值范围3.4*10^-38 ~ 3.4*10^38 |
double | 8 | 绝对值范围1.7*10^-308 ~ 1.7*10^308 |
long double | 8 | 绝对值范围1.7*10^-308 ~ 1.7*10^308 |