C++数据开放平台实战,手把手教你做工业级项目「完结」
来百度APP畅享高清图片
获课:itazs.fun/5766/
获取资源:上方URL获取资源
C++ 数据类型介绍
C++ 是一种静态类型的语言,这意味着变量在声明时必须指定类型。C++ 提供了多种内置数据类型,这些类型可以分为以下几类:基本数据类型、复合数据类型和派生数据类型。
1. 基本数据类型
基本数据类型是最常用的类型,它们直接对应于计算机的硬件支持。C++ 中的基本数据类型包括整型、浮点型、字符型和布尔型。
1.1 整型(Integer Types)
整型用于表示整数,包括有符号和无符号两种形式。常见的整型有:
- int:通常为32位,范围通常是 -2,147,483,648 到 2,147,483,647。
- short:通常为16位,范围通常是 -32,768 到 32,767。
- long:通常为32位,范围通常是 -2,147,483,648 到 2,147,483,647。
- long long:通常为64位,范围通常是 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807。
- unsigned int:无符号整型,范围通常是 0 到 4,294,967,295。
- unsigned short:无符号短整型,范围通常是 0 到 65,535。
- unsigned long:无符号长整型,范围通常是 0 到 4,294,967,295。
- unsigned long long:无符号长长整型,范围通常是 0 到 18,446,744,073,709,551,615。
1.2 浮点型(Floating-Point Types)
浮点型用于表示带有小数部分的数字。常见的浮点型有:
- float:单精度浮点数,通常为32位。
- double:双精度浮点数,通常为64位。
- long double:扩展精度浮点数,通常为80位或128位,具体取决于编译器。
1.3 字符型(Character Types)
字符型用于表示单个字符。常见的字符型有:
- char:通常为8位,可以表示ASCII字符。
- wchar_t:宽字符,通常为16位或32位,用于表示Unicode字符。
- char16_t:16位字符,用于表示UTF-16编码的字符。
- char32_t:32位字符,用于表示UTF-32编码的字符。
1.4 布尔型(Boolean Type)
布尔型用于表示真或假。唯一的布尔型是:
- bool:可以取值 true 或 false。
2. 复合数据类型
复合数据类型是由基本数据类型组合而成的类型,包括数组、指针、引用、结构体和联合体。
2.1 数组(Arrays)
数组是一组相同类型的元素的集合,通过索引访问。
cpp深色版本int arr[5] = {1, 2, 3, 4, 5}; // 定义一个包含5个整数的数组
2.2 指针(Pointers)
指针是一个变量,存储另一个变量的内存地址。
cpp深色版本int x = 10;int* ptr = &x; // ptr 存储 x 的地址
2.3 引用(References)
引用是变量的别名,必须在声明时初始化。
cpp深色版本int x = 10;int& ref = x; // ref 是 x 的别名
2.4 结构体(Structures)
结构体是一种用户定义的数据类型,可以包含多个不同类型的成员。
cpp深色版本struct Person { std::string name; int age;};Person p = {"Alice", 30};
2.5 联合体(Unions)
联合体也是一种用户定义的数据类型,但它的所有成员共享同一块内存区域。
cpp深色版本union Data { int i; float f; char str[20];};Data d;d.i = 10;d.f = 3.14; // 注意:这会覆盖之前的值
3. 派生数据类型
派生数据类型是从现有类型派生而来的类型,包括函数类型、枚举类型和类。
3.1 函数类型(Function Types)
函数类型描述了函数的返回类型和参数类型。
cpp深色版本int add(int a, int b) { return a + b;}
3.2 枚举类型(Enumerations)
枚举类型是一种用户定义的整数类型,可以赋予一组命名的常量。
cpp深色版本enum Color { RED, GREEN, BLUE };Color c = RED;
3.3 类(Classes)
类是面向对象编程的基础,可以包含数据成员和成员函数。
cpp深色版本class Rectangle {public: int width; int height; int area() { return width * height; }};Rectangle r;r.width = 5;r.height = 10;std::cout << "Area: " << r.area() << std::endl;
4. 类型修饰符
类型修饰符可以改变基本数据类型的性质,常见的类型修饰符有:
- signed:有符号类型,默认情况下整型都是有符号的。
- unsigned:无符号类型,只能表示非负数。
- short:短整型,通常为16位。
- long:长整型,通常为32位。
- long long:长长整型,通常为64位。
5. 类型转换
C++ 支持隐式类型转换和显式类型转换。
5.1 隐式类型转换
编译器自动进行的类型转换。
cpp深色版本int a = 10;double b = a; // a 被隐式转换为 double
5.2 显式类型转换
使用类型转换运算符进行的类型转换。
cpp深色版本double d = 3.14;int i = static_cast<int>(d); // 显式转换为 int
6. 总结
C++ 提供了丰富多样的数据类型,从基本的整型、浮点型、字符型和布尔型,到复合的数组、指针、引用、结构体和联合体,再到派生的函数类型、枚举类型和类。掌握这些数据类型及其用法是编写高效、可靠的C++程序的基础。