内存五个区域
栈区
由编译器自动编译释放,比如:
//此时将存储在常量区的字符串suica拷贝到栈区.
char string[] = "suica";
堆区
堆区需要程序员手动分配,手动释放.
在C语言中可使用malloc进行分配:
//给指针p分配一个大小的内存空间
int* p = (int *) malloc (1);
静态区
只初始化一次;如果初始化没给值,默认为0;只有程序退出才释放.
将变量定义前加static则存储在静态区
static int a = 5;
常量区
存放常量字符串,程序结束后系统释放.
int a = 10;
代码区
存放程序的二进制代码
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。