C&C++内存管理
1.内存分布
栈又叫堆栈,非静态局部变量/函数参数/返回值等等。
内存映射段是高效的I/O映射方式,用于装载一个共享的动态内存库。
堆用于程序运行时动态内存分配。
数据段存储全局变量和静态数据。
代码段可执行的代码/只读常量。
#include<stdio.h>
int a = 0; //a在数据段
static int b = 0; //b在数据段
int main()
{
static int c = 0; //c在数据段
int d = 0; //d栈
int e[10] = {
1,2,3 }; //e在栈
char f[] = "abcd"; //f和*f在栈
char* g = "abcd"; //g在栈/*g在代码段
int* h = (int*)malloc(sizeof(int) * 10); //h在栈/*h在堆</