1.heap和stack区别
1.stack用于存放程序运行时的临时变量,传参、调用函数时的PC值。
2.heap提供空间给应用程序申请和使用。
3.stack中的对象和变量只要定义好就可以使用了,应用程序结束时会自动释放。
4.heap中申请的变量或对象只能定义变量指针,并要求在运行过程中通过new来动态分配内存空间,而且必须显示地free你申请的内存。不过一些语言会帮你释放这部分内存,比如java的垃圾回收机。
5.stack中的变量的大小和个数会影响exe的文件大小,但速度快;heap中的变量大小与exe大小没有关系,但分配和释放需要耗费的时间远大于stack中分配内存所用的时间。
1011_C/C++笔试题_20:heap和stack区别
原创
©著作权归作者所有:来自51CTO博客作者h4breeze的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
C/C++笔试题(很多)
微软亚洲技术中心的面试题!!!1.进程和线程的差别。
c++ 白盒测试 黑盒测试 -
C++ 栈 (stack) & 堆 (heap)
C++ 栈 (stack) & 堆 (heap). 99% 程序员不知道的内幕.
原力计划 堆区 堆和栈 局部变量 C -
C++笔试题(转)
一看!
字符串 .net