
这段时间系统梳理了嵌入式C语言的学习大纲从前期必备的计算机底层常识到每一种基础数据类型的内存规则、取值范围全部整理出来完全是课堂手写笔记改编适合零基础循序渐进学习。一、C语言整体学习大纲整套C语言一共分为9个学习模块也是嵌入式开发必须全部掌握的内容1. 基本数据类型、表达式与运算符2. 标准输入与输出函数3. 流程控制分支结构、循环结构4. 自定义函数编写5. 数组用法6. 指针C语言核心难点7. 构造数据类型8. 内存管理与位运算9. 程序调试方法二、学习C语言前必备储备知识想要学好C语言一定要先弄懂计算机底层运行逻辑一共三块内容。1. 计算机组成与程序运行原理计算机由五大部件构成运算器、控制器、存储器、输入设备、输出设备。CPU负责执行指令程序存放在硬盘里运行时加载到内存同时还有高速缓存Cache用来提升读写速度。2. 计算机存储单位换算• bit二进制位只有0和1两种状态• byte字节内存基本存储单位8 bits 1 byte• 递进换算规则相邻单位倍率10241024 bytes 1KB1024 KB 1MB1024 MB 1GB1024 GB 1TB3. 四种进制规则• 二进制取值 0、1• 八进制取值 07• 十进制取值 09• 十六进制取值 0F三、C语言数据类型整体分类C语言的数据类型分成三大类基本数据类型、构造数据类型、指针类型。其中基本类型又细分为整型、字符型、浮点型、空类型泊尔类型需要引入头文件才能使用。一整型类型Ubuntu 64位系统整型分为有符号signed包含正数、负数、0和无符号unsigned只有大于等于0的数字最高位是符号位其余位置为数值位有符号数依靠补码存储无符号数原码和补码一致。关键字sizeof()可以查询任意类型占用的字节数量结果返回整型数字。1. short 短整型占用2字节• unsigned short范围 0 ~ 65535• signed short最大值32767最小值-32768规律无符号整型达到最大值再加1会跳转到最小值无符号最小值减1自动变成最大值也就是数据溢出。2. int 基本整型占用4字节• unsigned int最大值 2³²-1最小值0• signed int最大值2³¹-1最小值 -2³¹3. long 长整型占用8字节一般情况long字节数大于等于int字节数• unsigned long最大值 2⁶⁴-1• signed long最大值 2⁶³-1最小值 -2⁶³二字符类型 char占用1个字节用来存放字母、符号、转义字符例如 a~z、A~Z、0~9、\n换行符等。• unsigned char范围 0 ~ 255• signed char最大值127最小值-128三浮点类型存放小数遵循IEEE存储标准1. float 单精度浮点型占用4个字节有效精度6~8位内存结构1位符号位 8位指数位 23位尾数位。2. double 双精度浮点型占用8个字节有效精度12~16位内存结构1位符号位 11位指数位 52位尾数位。重要注意点浮点数在内存存储时会存在精度丢失问题。四空类型 void两种使用场景1. 用在函数形参和返回值代表不需要传入参数、没有返回数据2. void* 万能指针可以接收任意类型地址是嵌入式里常用写法五泊尔类型 bool占用1字节true等价于数字1false等价于数字0使用时必须导入头文件#include stdbool.h