
内存管理
文章平均质量分 83
安于当下
这个作者很懒,什么都没留下…
展开
-
malloc realloc and new
realloc 原型:extern void *realloc(void *mem_address, unsigned int newsize); 用法:#include 有些编译器需要#include 功能:改变mem_address所指内存区域的大小为newsize长度。 说明:如果重新分配成功则返回指向被分配内存的指针,否则返回空指针NULL。 当内转载 2014-07-17 10:11:34 · 459 阅读 · 0 评论 -
malloc&realloc(转)
malloc&realloc首先看个问题程序(这里用的是TC编译器):[cpp] view plaincopyprint?#include "stdlib.h" #include "stdio.h" void main() { int *i; i=(int *)malloc(sizeof(int)); *i=1;转载 2014-07-17 10:12:46 · 665 阅读 · 0 评论 -
程序的内存管理
内存分配方式有三种:[1]从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。[2]在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。[3]从堆上分配,亦称动态内存分配。程序在运行的转载 2014-07-17 09:56:56 · 551 阅读 · 0 评论 -
C++中的指针与引用
写在前面 指针和引用形式上很好区别,但是他们似乎有相同的功能,都能够直接引用对象,对其进行直接的操作。但是什么时候使用指针?什么时候使用引用呢?这两者很容易混淆,在此我详细介绍一下指针和引用,力争将最真实的一面展现给大家。如果我喷得不够好,希望嘴下留情、手下留命,还请指点一二;如果感觉还不错,请大家鼓掌。1、指针和引用的定义 在深入介绍之前我们首先来看一下指针和引用的定义、转载 2014-07-18 13:38:41 · 477 阅读 · 0 评论 -
也谈栈和栈帧
一个码农要是没遇见过coredump,那他就是神仙了。core file(coredump的转储文件)中保存的最重要内容之一,就是函数的call trace。还原这部分内容(栈回溯),并与原代码对应上,尽快找出程序崩溃的位置和原因,是码农们一生的责任。当然,你如果有良好的开发环境和开发习惯,保留了现场环境(core file and lib file等)和unstrip的原程序,那么恭喜,转载 2014-07-23 17:14:57 · 6525 阅读 · 1 评论