内存
Coding_Fly_
满招损,谦得益
展开
-
内存布局
在C++中可以将内存布局大致分为如上图所示的几个区域程序代码区主要用来存放程序的代码(包括可执行指令);全局数据区主要存放全局变量,静态变量常量;栈是存放程序中所有的动态局部变量,函数参数,函数的返回值等信息。栈是向下增长的,从栈中分配的内存效率特别的高,这也是C/C++能产生高效代码的原因之一;在固定存储区域与堆栈之间的自由区域称为堆,堆是向上增长的,可以使用C++的动态内存分配系统...原创 2020-03-13 21:43:45 · 176 阅读 · 0 评论 -
常见的动态内存开辟错误
1:对空指针(NULL)的解应用操作看代码void test(){ int* p = (int*)malloc(50); *p = 20; free(p);}直接对开辟空间进行判断,少了对这个指针是否为空指针的判断,如果动态申请空间不成功就会将空指针返回,直接对空指针进行操作必然导致错误。2:动态空间的越界访问void test(){ int* p = (int*...原创 2019-10-09 12:14:28 · 136 阅读 · 0 评论