01
指针基础
内存地址的概念 · 指针的定义与初始化 · 取地址符&与解引用符*
入门核心
02
指针与变量
指针指向基本数据类型 · 赋值与修改 · 空指针与野指针
基础易错
03
指针与数组
数组名的指针含义 · 通过指针遍历数组 · 指针与数组名的区别
数组重点
04
指针运算
算术运算(++ -- + -) · 指针比较 · 与数组元素访问
运算技巧
05
指针与函数
指针作为函数参数/返回值 · 实现函数间数据交换
函数传参
06
指针与字符串
字符串指针与字符数组 · 常量指针表示 · 字符串处理函数
字符串经典
07
指针与二维数组
二维数组指针表示 · 行指针与列指针 · 遍历二维数组
二维进阶
08
指针数组
定义与使用 · 与二维数组对比 · 命令行参数argv
数组argv
09
数组指针
数组指针定义 · 与二维数组 · 作为函数参数
指针声明
10
多级指针
二级指针定义与使用 · 应用场景 · 指针的指针与动态内存
二级指针内存
11
const与指针
const修饰三种形式 · 常量指针与指针常量 · 应用
const安全
12
void指针
void*定义与使用 · 强制类型转换 · 通用函数应用
泛型灵活
13
函数指针
定义与赋值 · 通过函数指针调用函数 · 函数指针数组
回调高级
14
函数指针作为参数
回调函数概念 · qsort分析 · 自定义回调示例
回调qsort
15
指针与动态内存分配
malloc/calloc/realloc/free · 动态数组 · 避免内存泄漏
堆区内存
16
指针与结构体
结构体指针 · ->运算符 · 作为函数参数
结构体->
17
指针与链表
单向链表定义 · 创建与遍历 · 插入与删除
链表数据结构
18
指针与文件操作
文件指针FILE* · 读写指针操作 · 缓冲区与指针
文件IO
19
指针与复杂声明
右左法则解析 · 函数指针与数组指针声明 · typedef简化
解析进阶
20
指针的常见错误
段错误 · 内存越界 · 未初始化指针 · 双重释放
调试避坑
21
指针与内存布局
程序内存分区(栈/堆/全局/常量) · 指针与各区域关系
内存布局
22
指针与位操作
指针位运算 · 操作寄存器 · 嵌入式应用
位运算嵌入式
23
指针与volatile
volatile作用 · volatile指针应用 · 嵌入式寄存器操作
volatile硬件
24
指针与内联汇编
C嵌入汇编 · 通过指针访问特殊寄存器 · 性能优化
汇编优化
25
指针与多线程
线程安全与指针 · 共享内存指针操作 · 原子操作
多线程并发
26
指针与网络编程
socket编程指针 · 数据缓冲区操作 · 协议解析
网络socket
27
指针与算法
排序算法指针应用 · 查找技巧 · 复杂度优化
算法优化
28
指针与数据结构
栈、队列、树的指针实现 · 核心作用
数据结构核心
29
指针调试技巧
GDB调试指针 · 打印地址与值 · Valgrind内存检测
调试工具
30
指针综合实战
实现内存池 · 动态数组库 · 简单垃圾回收
实战项目