Chinaunix首页 | 论坛 | 博客
  • 博客访问: 189308
  • 博文数量: 39
  • 博客积分: 1007
  • 博客等级: 准尉
  • 技术积分: 513
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-15 09:15
文章分类

全部博文(39)

文章存档

2012年(2)

2011年(37)

分类: C/C++

2011-07-20 10:02:46

声明:文章来自网络和书本《Linxu C 程序设计大全》个人整理
 
堆:大家共有的空间,分全局堆和局部堆。全局堆就是没有分配的空间,局部堆就是用户分配的堆空间。堆在系统进程初始化的时候分配,运行过程中亦可向系统申请额外的堆,但是用完记得还给操作系统。不然会引起内存泄漏
 
栈:线程独有,保存其运行状态和局部自动变量。栈在线程开始时初始化,每个线程相互独立,故栈是thread safe的。每个C++对象的数据成员也存在栈中,每个函数都有自己的栈,栈用来在函数之间传递参数。操作系统在切换线程时会自动切换栈,也就是切换SS/ESP寄存器。栈空间不需要在高级语言里显示分配和释放。
 

动态内存分配:malloc()

阅读(757) | 评论(0) | 转发(0) |
0

上一篇:数据大小端的判断。

下一篇:C程序优化

给主人留下些什么吧!~~