C++基础知识详解:数据类型与变量常量

需积分: 10 0 下载量 177 浏览量 更新于2024-09-05 收藏 3KB MD 举报
C++基础知识 C++是一种强大的编程语言,它基于C语言并扩展了许多特性,如面向对象编程。本文将介绍C++中的基础知识,包括基本数据类型、取值范围、变量与常量以及输入输出。 ### 基本数据类型 C++提供了多种基本数据类型,用于存储不同种类的值: 1. **整型(int)**:在32位系统中,整型占用4个字节,取值范围是从$-2^{31}$到$(2^{31}-1)$。 2. **字符型(char)**:占用1个字节,即8位二进制。在双字节字符集中,虽然可能需要2个字节,但char仍被视为基本类型,取值范围通常是-128到127或0到255(无符号)。 3. **实型(浮点型)**: - **单精度类型(float)**:32位系统中,它有24位有效数字(实际23位,因为最高位默认为1),取值范围大约是$-10^{38}$到$10^{38}$。 - **双精度类型(double)**:在32位系统中,它有53位有效数字,取值范围约为$-10^{308}$到$10^{308}$。 - **长双精度型(long double)**:通常也是53位有效数字,但在某些系统中可能更多。 4. **布尔型(bool)**:占用1个字节,取值为`true`或`false`。 5. **无值型(void)**:不占用任何空间,通常用于函数指针或表示没有特定类型的值。 6. **非基本类型**,包括: - **数组(type[])**:一组相同类型的元素集合。 - **指针(*)**:存储内存地址,可以指向变量或数组。 - **引用(type&)**:类似于别名,一旦初始化,就必须始终引用同一个对象。 - **类(class)**:C++的面向对象特性,用于封装数据和方法。 - **结构(struct)**:与类类似,但默认成员是公有的。 - **联合(union)**:允许多个不同类型的数据共享同一块内存。 - **枚举(enum)**:定义一组命名的整数值。 ### 变量与常量 **变量**是用于存储数据的内存位置。变量在声明时应初始化,以避免引用到未定义的值。例如,`int age = 25;`声明了一个整型变量`age`并将其初始化为25。 **常量**是不可变的变量,一旦初始化后就不能更改。C++中使用`const`关键字声明常量,如`const int MAX_SIZE = 100;`。尽管常量的值不能直接改变,但通过指针或引用访问常量并修改其引用的对象是可能的。 ### 输入输出 C++中,标准输入输出库`iostream`提供了处理输入输出的功能。例如,`cin`用于从标准输入(通常是键盘)读取数据,`cout`用于向标准输出(通常是屏幕)打印数据。 ```cpp #include <iostream> using namespace std; int main(void) { char city[11]; cin.getline(city, 10); // 从键盘读取最多10个字符到city数组,包括空格 cout << "城市名:" << city << endl; // 打印城市名 } ``` `getline()`函数用于读取一整行输入,而不仅仅是遇到第一个空白字符就停止。在上述示例中,用户可以输入最多10个字符的城市名,包括空格,然后程序会将其打印出来。 理解和掌握这些基本概念是学习C++编程的基础,这将有助于构建更复杂的程序和深入理解高级特性。