在 C++ 中,数据类型是对变量的声明。它决定了与变量关联的数据类型和大小。例如,
int age = 13;
在这里,age 是一个类型为 int
的变量。这意味着该变量只能存储 2 或 4 字节的整数。
C++ 基本数据类型
下表显示了基本数据类型、它们的含义和大小(以字节为单位)
数据类型 | 含义 | 大小(字节) |
---|---|---|
int |
整数 | 2 或 4 |
浮点数 |
浮点数 | 4 |
双精度浮点数 |
双精度浮点数 | 8 |
char |
字符 | 1 |
wchar_t |
宽字符 | 2 |
bool |
布尔型 | 1 |
void |
空 | 0 |
现在,让我们更详细地讨论这些基本数据类型。
1. C++ int
int
关键字用于表示整数。- 它的大小通常是 4 字节。这意味着它可以存储从 -2147483648 到 2147483647 的值。
- 例如,
int salary = 85000;
2. C++ float 和 double
float
和double
用于存储浮点数(小数和指数)。float
的大小为 4 字节,double
的大小为 8 字节。因此,double
的精度是float
的两倍。要了解更多,请访问 C++ float 和 double。- 例如,
float area = 64.74;
double volume = 134.64534;
如上所述,这两种数据类型也用于指数。例如,
double distance = 45E12 // 45E12 is equal to 45*10^12
注意:要了解更多关于 float 和 double 的信息,请访问 C++ float 和 double。
3. C++ char
- 关键字
char
用于表示字符。 - 它的大小是 1 字节。
- C++ 中的字符用单引号
' '
括起来。 - 例如,
char test = 'h';
注意:在 C++ 中,一个整数值存储在 char
变量中,而不是字符本身。要了解更多,请访问 C++ 字符。
4. C++ wchar_t
- 宽字符
wchar_t
与char
数据类型类似,只是它的字节大小为 2 字节,而不是 1 字节。 - 它用于表示需要比单个
char
更多内存来表示的字符。 - 例如,
wchar_t test = L'ם' // storing Hebrew character;
注意引号前的字母 L。
注意:C++11 还引入了另外两种固定大小的字符类型 char16_t
和 char32_t
。
5. C++ bool
bool
数据类型有两个可能的值:true
或false
。- 布尔值用于条件语句和循环(我们将在后面的章节中学习)。
- 例如,
bool cond = false;
6. C++ void
void
关键字表示数据的缺失。它表示“无”或“无值”。- 当我们学习函数和指针时,我们将使用 void。
注意:我们不能声明 void
类型的变量。
C++ 类型修饰符
我们可以使用 类型修饰符 进一步修改一些基本数据类型。C++ 中有 4 种类型修饰符。它们是
signed
unsigned
short
long
我们可以使用上述修饰符修改以下数据类型
int
双精度浮点数
char
C++ 修改后的数据类型列表
数据类型 | 大小(字节) | 含义 |
---|---|---|
有符号整型 |
4 | 用于整数(等同于 int ) |
无符号整型 |
4 | 只能存储正整数 |
short |
2 | 用于小型整数(范围 -32768 到 32767) |
unsigned short |
2 | 用于小型正整数(范围 0 到 65,535) |
long |
至少 4 | 用于大型整数(等同于 long int ) |
无符号长整型 |
4 或 8 | 用于大型正整数或 0(等同于 unsigned long int ) |
long long |
8 | 用于非常大的整数(等同于 long long int )。 |
unsigned long long |
8 | 用于非常大的正整数或 0(等同于 unsigned long long int ) |
long double |
8、12 或 16 | 用于大型浮点数 |
有符号字符 |
1 | 用于字符(保证范围 -127 到 127) |
无符号字符 |
1 | 用于字符(范围 0 到 255) |
让我们看几个例子。
long b = 4523232;
long int c = 2345342;
long double d = 233434.56343;
short d = 3434233; // Error! out of range
unsigned int a = -5; // Error! can only store positive numbers or 0
派生数据类型
从基本数据类型派生出来的数据类型是派生类型。例如:数组、指针、函数类型、结构体等。
我们将在后面的教程中学习这些派生数据类型。