数据类型

类型决定:占多少内存、能表示什么范围、如何解释这些 0/1。选错类型,轻则数值不对,重则溢出。

1. 概念:类型是给内存「贴标签」

内存本身只是一串字节。类型告诉你:这串字节当整数看、当小数看,还是当字符看。

类型族关键字直觉典型用途
整数short int long long long无小数计数、索引、状态
浮点float double有小数且近似电压、温度、系数
字符char一个字符/小整数字母、状态字节

2. 同一串字节,不同解释

C
1int a = 0x41424344;
2char *s = (char *)&a; // 仅示意:把整数内存当字节看
3/* 在小端机器上可能看到 D C B A 顺序的字符 */
4/* 初学先记住:类型决定解释方式 */

3. 选型流程(工程直觉)

  1. 是不是整数个数/下标/开关位?→ 整数族
  2. 要不要小数或测量换算?→ float/double
  3. 是不是单字节/字符?→ char 或 uint8_t
  4. 是否要固定宽度跨平台?→ stdint.h 的 int32_t 等