c的程序要手动管理内存的,所有的数据(结构)都可以分为两种存储方式,连续存储,顾名思义申请一片连续的内存以供使用(数组.结构体.共用体.栈.队列):非连续存储,顾名思义断断续续的的存储,那有一点这有一点(链表,链表实现的树). 对齐填充,这个东西很有意思,看似无用其实很关键,比如有个结构体: struct xo { int i;char j,int k}; 结构体是连续存储的,我们设这个结构体起始地址为0x0,那么 i 的地址 就是 0x0 .j就是0x4.k就是0x5,可是呢OS(操作系统)不…