c/c++中的堆和栈的作用、区别
栈:在Windows下,栈是向低地址扩展的数据结 构,是一块连续的内存的区域。这句话的意思是栈顶的地址和栈的最大容量是系统预先规定好的,在WINDOWS下,栈的大小是2M(也有的说是1M,总之是 一个编译时就确定的常数),如果申请的空间超过栈的剩余空间时,将提示overflow。这是由于系统是用链表来存储的空闲内存地址的,自然是不连续的,而链表的遍历方向是由低地址向高地址。4.文字常量区:常量在统一运行被创建,常量区的内存是只读的,程序结束后由系统释放。栈的增长方向是向下的,即向内存地址减小的方向。
原创
2023-05-05 21:00:12 ·
316 阅读 ·
0 评论