数据类型与表达式是编程语言中的基础概念,特别是在C++中。C++提供了多种基本数据类型,用于存储不同种类的数据。这些数据类型包括整型、实型(浮点数)、字符型、布尔型等。
1. **整型**:整型用于存储不带小数的数值,分为有符号和无符号两种。C++中的整型类型包括`int`、`short`、`long`和它们的无符号版本`unsigned`。例如:
- `int`:在大多数系统上,`int`通常占用4个字节,可以表示的数值范围是-2^31到2^31-1。
- `short`:通常占用2个字节,范围是-2^15到2^15-1。
- `long`:一般占用4个字节,与`int`相同,但在某些系统上可能更大。
- `unsigned`前缀的整型表示无符号数,例如`unsigned int`,其值域为0到2^32-1。
2. **实型**:实型用来存储带有小数的数值,C++中有`float`和`double`两种。`float`通常占用4个字节,可以表示大约6-9位有效数字,而`double`占用8个字节,提供更高的精度,可以表示15-16位有效数字。浮点数可以用标准的小数形式或指数形式表示。
3. **字符型**:`char`类型用于存储单个字符,如字母、数字或符号。在C++中,`char`占用1个字节,范围通常是-128到127。也可以用转义序列来表示特殊字符,比如`\n`表示换行,`\t`表示制表符。
4. **布尔型**:`bool`类型只有两个值,`true`和`false`,占用1个字节。它用于逻辑判断和条件表达式。
5. **常量与变量**:
- **常量**:在程序执行过程中不能改变的值。分为字面常量(直接写入的值,如10,"hello")和符号常量(用标识符表示,如`#define PI 3.14159`)。常量可以是整型、实型、字符型、字符串型或布尔型。
- **变量**:在程序中存储数据的存储位置,其值可以在程序运行时改变。变量必须先声明其类型,然后才能使用。
6. **数据类型的大小测试**:`sizeof`运算符可以用来确定数据类型或变量占用的内存字节数。例如,`sizeof(char)`将返回1,`sizeof(int)`通常返回4,以此类推。
7. **数值表示**:整型常量可以以十进制、八进制(前缀0)和十六进制(前缀0x或0X)形式表示。实型常量可以是十进制小数或指数形式,并且可以加上`f`或`F`后缀指定为`float`类型。
8. **程序示例**:在C++程序中,可以通过`cout`输出变量或常量的值,如`cout << -19 << endl;`会打印出-19。
理解这些基本数据类型和常量的概念对于编写C++代码至关重要,因为它们决定了变量如何存储和操作数据,以及如何进行算术运算和逻辑判断。在实际编程中,正确选择和使用数据类型可以优化程序性能,减少错误,并提高代码的可读性。