我们都知道c/c内存分配有这样几个存储区
全局/静态数据区:存储全局变量和静态变量声明变量
常量存储区:存储常量如char *s=\"abcde\"; 或者 const i =10;代码区:这个不说了代码放地儿
栈:临时变量参数等有大小限制vc6/7: 1M
堆: 用户自己维护空间内存使用需要自己申请自己释放大小基本不限(4G)
example:
# <iostream>
using std;
global = 100; //全局/静态区
const N = 10; //常量区
{
a = 0; //全局/静态区
char arr[100]=\"test\";//arr分配在栈上\"test\"分配到常量区还有个副本在栈上
char *s = \"abcde\";//s分配在栈上\"abcde\"分配在常量区
char*str = NULL; //str分配在栈上
str = char[10];//str所指向空间分配在堆上
delete str;
0;
}
最新评论