C++ 基础数据类型完全指南

基础概念回顾

内存与数据表示

内存的最小单位是一个二进制位,也称为比特。能够直接寻址(访问)的最小内存单位是字节。现代标准规定一个字节等于8个比特。

数据类型基础

数据类型告诉编译器如何以有意义的方式解释内存中的内容。C++支持许多基本数据类型,包括:

  • 浮点数
  • 整数
  • 布尔值
  • 字符
  • 空指针
  • 无类型

类型系统详解

类型大小与sizeof运算符

不同类型的大小不同,且在不同机器上可能会有所不同。sizeof运算符可用于返回类型的大小(以字节为单位)。

整数类型

有符号整数

  • 用于存储正数和负数(包括0)
  • 需要注意溢出和整数除法问题

无符号整数

  • 只存储正数(和0)
  • 除非进行位级操作,否则通常应避免使用

特殊整数类型

定宽整数

  • 具有保证大小的整数
  • 可能并非在所有架构上都存在

size_t类型

  • 无符号整数类型
  • 用于表示对象的大小或长度

数值表示与计算

科学记数法

  • 用于书写长数字的简写方法
  • C++支持与浮点数结合使用
  • 有效数字中的数字称为有效位数

浮点数特性

  • 用于存储实数(包括小数部分)
  • 精度定义了可表示的有效位数
  • 需要注意舍入误差问题

条件判断与布尔类型

布尔值基础

布尔类型用于存储真或假值。

if语句使用

  • 允许在条件为真时执行代码
  • 可以使用else语句处理假值情况

字符处理

字符类型特性

  • 用于存储ASCII字符
  • 注意区分ASCII码值和数字
  • 使用static_cast进行类型转换

实践测验

数据类型选择练习

选择适当的数据类型:

// 示例代码
Enter a double value: 6.2
Enter a double value: 5
Enter +, -, *, or /: *
6.2 * 5 is 31

高级应用练习

模拟小球下落程序:

Enter the height of the tower in meters: 100
At 0 seconds, the ball is at height: 100 meters
At 1 seconds, the ball is at height: 95.1 meters
At 2 seconds, the ball is at height: 80.4 meters
At 3 seconds, the ball is at height: 55.9 meters
At 4 seconds, the ball is at height: 21.6 meters
At 5 seconds, the ball is on the ground.

注意事项:

  1. 使用双精度浮点数字面量
  2. C++中^不是指数运算符
  3. 根据塔的高度,结果可能有所不同

关注公众号,回复"cpp-tutorial"

可领取价值199元的C++学习资料

公众号二维码

扫描上方二维码或搜索"cpp-tutorial"