c/c++内存管理
文章平均质量分 75
hengshan
这个作者很懒,什么都没留下…
展开
-
c++程序内存泄露检测工具
功能: 用于检测c++程序的内存泄露。原理: 其实很简单,就是通过函数的重载机制,捕获应用程序的new, new[] , delete , delete[], malloc,calloc,free等内存操作函数。特点: 由于在检测的过程中,需要记录用户程序内存分配信息,所以工具本身必须进行内存动态分配。为了提高内存分配效率,程序实现了两个链表。1、空闲链表,其实就是一个简单的内存池//定义一个结构,保存内存分配信息typedef struct _tagMemoryInfo{原创 2010-06-22 22:45:00 · 4699 阅读 · 2 评论 -
c & c++中的“指针、指针变量、指针变量的类型”
1.1 c & c++中的“指针、指针变量、指针变量的类型” 1.1.1 指针:1.是变量的地址2.指针的长度和计算机的字长相关,例如:在32位计算机中,指针的长度是32位,即4字节;在64位计算机中,指针的长度是64位,即8字节。 1.1.2 指针变量就是c语言中原创 2011-07-08 11:11:11 · 5422 阅读 · 2 评论 -
数据的字节对齐(data structure alignment)
1.1.1 为什么需要字节对齐 1、处理器的差异 有的处理器,不容许在字节未对齐的地址上访问字或者是多个字的数据。比如sun sparc cpu,不容许在奇数字节上访问一个字,否则会出现异常。2、出于CPU读取内存数据效率的考虑。 CPU访问内存的时候,都是以字为单位的,如果要读取的数据不在字节对齐的位置上,就要对一次读取数据的操作。比如,在下面的内存模式中,如果要读取原创 2011-06-20 23:10:00 · 3183 阅读 · 0 评论