📜  C++变量类型(1)

📅  最后修改于: 2023-12-03 15:29:55.152000             🧑  作者: Mango

C++变量类型

在C++中,每个变量都有一个特定的类型,决定该变量可以存储哪种数据以及可以进行哪些操作。C++中常见的变量类型有以下几种:

基本数据类型

基本数据类型可以存储简单的值。包括:

  • 整型(int、short、long、long long)
  • 实型(float、double、long double)
  • 字符型(char、wchar_t、char16_t、char32_t)
  • 布尔型(bool)
整型

整型包括int、short、long、long long四种类型,它们的取值范围不同。

int a = 2147483647; // int类型取值范围为-2147483648~2147483647
short b = 32767; // short类型取值范围为-32768~32767
long c = 2147483647; // long类型取值范围为-2147483648~2147483647
long long d = 9223372036854775807; // long long类型取值范围为-9223372036854775808~9223372036854775807
实型

实型包括float、double、long double三种类型,它们的精度和取值范围不同。

float a = 3.1415926f; // float类型精度为6~7位有效数字
double b = 3.141592653589793; // double类型精度为15~16位有效数字
long double c = 3.141592653589793238462643383279502884L; // long double类型精度为18~19位有效数字
字符型

字符型包括char、wchar_t、char16_t、char32_t四种类型,它们主要用于存储字符和字符串。

char a = 'a'; // char类型用于存储ASCII字符(单个字符)
wchar_t b = L'菜'; // wchar_t类型用于存储unicode字符(单个字符)
char16_t c = u'人'; // char16_t类型用于存储UTF-16编码的字符(单个字符)
char32_t d = U'好'; // char32_t类型用于存储UTF-32编码的字符(单个字符)
布尔型

布尔型只有两个值:true和false。一般用于逻辑运算。

bool a = true;
bool b = false;
构造类型

构造类型是由基本数据类型组合而成的数据类型,包括:

  • 数组
  • 结构体
  • 共用体
  • 枚举
数组

数组是一组数据的集合,它们的类型必须相同,可以通过下标访问每个数据。

int arr[5] = {1, 2, 3, 4, 5}; // 定义一个包含5个int类型元素的数组
结构体

结构体可以将多个不同类型的数据组合在一起,形成一个新的数据类型,它们可以通过成员变量访问。

struct Student {
    string name;
    int age;
    char gender;
}; // 定义一个结构体类型

Student stu = {"Tom", 18, 'M'}; // 定义一个Student类型的变量
cout << stu.name << " " << stu.age << " " << stu.gender << endl; // 输出结果:Tom 18 M
共用体

共用体是一种特殊的结构体,所有成员变量共用一个内存地址,它们可以理解为不同的名字对同一个变量进行不同的解释。

union Data {
    int i;
    float f;
    char c[4];
}; // 定义一个共用体类型

Data data;
data.i = 65536;
cout << data.i << endl; // 输出结果:65536
data.f = 3.14159;
cout << data.f << endl; // 输出结果:3.14159
data.c[0] = 'a';
data.c[1] = 'b';
data.c[2] = 'c';
data.c[3] = '\0';
cout << data.c << endl; // 输出结果:abc
枚举

枚举是一种特殊的整型,它只能存储预定义的一些常量值。

enum Color {
    RED,
    GREEN,
    BLUE
}; // 定义一个枚举类型

Color color = GREEN; // 定义一个枚举变量
cout << color << endl; // 输出结果:1
指针类型

指针类型用于存储内存地址,指向其他变量或者函数。

int a = 1;
int* p = &a; // 定义一个指向int类型变量的指针

cout << *p << endl; // 输出结果:1
引用类型

引用类型也是用于引用其他变量,不同于指针的是,引用类型必须在定义时初始化,并且不需要使用*符号解引用。

int a = 1;
int& r = a; // 定义一个int类型的引用

cout << r << endl; // 输出结果:1
r = 2;
cout << a << endl; // 输出结果:2
总结

以上就是C++中常见的变量类型,掌握它们可以让程序员更好地理解和利用C++语言。