C++ 数据类型

预计时间: 5分钟

在本教程中,我们将借助示例了解 C++ 编程中的 int、float、char 等基本数据类型。

在 C++ 中,数据类型是变量的声明。这决定了与变量关联的数据的类型和大小。例如,

int age = 13;

这里的age是一个int类型的变量。这意味着,该变量只能存储 2 或 4 个字节的整数。

C++ 基本数据类型

下表显示了基本数据类型、它们的含义和它们的大小(以字节为单位):

数据类型意义大小(以字节为单位)
int整数2 或 4
float浮点数4
double双精度浮点数8
char字符1
wchar_t宽字符2
bool布尔值1
void空的0

现在,让我们更详细地讨论这些基本数据类型。

1. C++ 整数

  • int关键字用于表示整数。
  • 它的大小通常为 4 个字节。这意味着,它可以存储从**-2147483648 到 2147483647**的值。
  • 例如,
int salary = 85000;

2. C++ 浮点数和双精度数

  • floatdouble用于存储浮点数(小数和指数)。
  • float的大小为 4 个字节, double的大小为 8 个字节。因此,double具有两倍的float精度。要了解更多信息,请访问 C++ float 和 double。
  • 例如,
float area = 64.74;
double volume = 134.64534;

如上所述,这两种数据类型也用于指数。例如,

double distance = 45E12    // 45E12 相当于 45*10^12

3. C++ 字符

  • char关键字用于字符。
  • 它的大小是 1 个字节。
  • C++ 中的字符用单引号括起来' '
  • 例如,
char test = 'h';

注意:在 C++ 中,整数值存储在char变量中,而不是字符本身。要了解更多信息,请访问C++ 字符。

4. C++ wchar_t

  • 宽字符wchar_t类似于char数据类型,只是它的大小是 2 个字节而不是 1 个。
  • 它用于表示需要更多内存来表示它们的字符,而不是单个char.
  • 例如,
wchar_t test = L'ם'  // 希伯来语字符的存储

注意引号前的字母 L。

注意:还有另外两种固定大小的字符类型char16_tchar32_t在 C++11 中引入。

5. C++ 布尔值

  • bool数据类型具有以下两个可能值之一:truefalse
  • 布尔值用于条件语句和循环(我们将在后面的章节中学习)。
  • 例如,
bool cond = false;

6. C++ 无效

  • void关键字表示没有数据。它的意思是“没有”或“没有价值”。
  • 当我们学习函数和指针时,我们将使用 void。

注意:我们不能声明该void类型的变量。

C++ 类型修饰符

我们可以使用类型修饰符进一步修改一些基本数据类型。C++中有4个类型修饰符。他们是:

  1. signed
  2. unsigned
  3. short
  4. long

我们可以使用上述修饰符来修改以下数据类型:

  • int
  • double
  • char

C++ 修改数据类型列表

数据类型大小(以字节为单位)意义
signed int4用于整数(相当于int
unsigned int4只能存储正整数
short2用于小整数(范围**-32768 到 32767**)
unsigned short2用于小的正整数(范围0 到 65,535
long至少 4用于大整数(相当于long int
unsigned long4用于大的正整数或 0(相当于unsigned long int
long long8用于非常大的整数(相当于long long int)。
unsigned long long8用于非常大的正整数或 0(相当于unsigned long long int
long double12用于大浮点数
signed char1用于字符(保证范围 -127 到 127
unsigned char1用于字符(范围0 到 255

让我们看几个例子。

long b = 4523232;
long int c = 2345342;
long double d = 233434.56343;
short d = 3434233; // 错误!超出范围
unsigned int a = -5;    // 错误!只能存储正数或0

派生数据类型

从基本数据类型派生的数据类型是派生类型。例如:数组、指针、函数类型、结构等。

我们将在后面的教程中了解这些派生数据类型。

更新于2021年05月02日