C++ 数据类型
本文介绍了 C++ 编程语言中的基本数据类型,例如 int、float、char 等。
在 C++ 编程语言中,数据类型决定了与变量关联的数据的类型和大小。C++ 语言提供了几种基本数据类型,例如 int
、float
、char
等。例如,
int age = 13;
这里, age
是一个 int
类型的变量。意思是,该变量只能存储 2
或 4
个字节的整数。
C++ 基本数据类型
下表显示了基本数据类型、它们的含义和它们的大小(以字节为单位):
数据类型 | 说明 | 大小(以字节为单位) |
---|---|---|
int |
整数 | 2 或 4 |
float |
浮点 | 4 |
double |
双浮点 | 8 |
char |
特点 | 1 |
wchar_t |
宽字符 | 2 |
bool |
布尔值 | 1 |
void |
空的 | 0 |
现在,让我们更详细地讨论这些基本数据类型。
C++ 整数 int
int
关键字用来表示整数。int
的大小通常是 4 个字节。意思是,它可以存储从-2147483648
到2147483647
的值。
例如,
int salary = 85000;
C++ 浮点数 float 和 double
float
和double
用于存储浮点数(小数和指数)。float
的大小为 4 个字节,而double
的大小为 8 个字节。因此,double
的精度是float
的两倍。
例如,
float area = 64.74;
double volume = 134.64534;
float
和 double
这两种数据类型也可以使用指数。例如,
double distance = 45E12 // 45E12 is equal to 45*10^12
C++ 字符 char
- 关键字
char
用于声明字符类型。 - 它的大小是 1 个字节。
- C++ 中的字符括在单引号内
''
。
例如,
char test = 'h';
**注意:**在 C++ 中,存储在 char
变量中的是字符对应的 ASCII 整数值而不是字符本身。
C++ 宽字符 wchar_t
- 宽字符
wchar_t
与char
数据类型类似,只是它的大小是 2 个字节而不是 1 个字节。 - 它用于表示需要比单个
char
占用更多字节的字符。
例如,
wchar_t test = L'ם' // 希伯来字符;
注意引号前的字母 L
。
! 注意: 还有两个其他固定大小的字符类型 char16_t
和 char32_t
,他们是在 C ++ 11 引入的。
C++ 布尔 bool
bool
数据类型有两个可能的值之一:true
或false
。- 布尔值用于条件语句和循环(我们将在后面的章节中学习)。
例如,
bool cond = false;
C++ void
void
关键字指示不存在数据。它的意思是“没有”或“没有价值”。- 当我们学习函数和指针时,我们将使用 void。
! 注意: 我们不能声明该 void
类型的变量。
C++ 类型修饰符
我们可以通过使用类型修饰符进一步修饰基本数据类型。C++ 中有 4 种类型修饰符。他们是:
signed
unsigned
short
long
我们可以使用上述修饰符修改以下数据类型:
int
double
char
C++ 修改数据类型列表
数据类型 | 大小(以字节为单位) | 意义 |
---|---|---|
signed int |
4 | 用于整数(相当于 int ) |
unsigned int |
4 | 只能存储零和正整数 |
short |
2 | 用于小整数(范围 -32768 到 32767 ) |
unsigned short |
2 | 用于小的正整数(范围 0 到 65535 ) |
long |
至少 4 | 用于大整数(相当于 long int ) |
unsigned long |
4 | 用于大的正整数和零(相当于 unsigned long int ) |
long long |
8 | 用于非常大的整数(相当于 long long int )。 |
unsigned long long |
8 | 用于非常大的正整数和零(相当于 unsigned long long int ) |
long double |
12 | 用于大浮点数 |
signed char |
1 | 用于字符(保证范围 -127 到 127 ) |
unsigned char |
1 | 用于字符(范围 0 到 255 ) |
让我们看几个例子:
long b = 4523232;
long int c = 2345342;
long double d = 233434.56343;
short d = 3434233; // 错误! 超出范围了
unsigned int a = -5; // 错误! 无符号只能赋值正整数或 0
派生数据类型
从基本数据类型派生的数据类型是派生类型。例如:数组、指针、函数类型、结构体等。
我们将在后面的教程中了解这些派生数据类型。