![]() 包含栈 ,堆,数据段,代码段 还有栈和堆是不一样的 ,栈用 stack表示,堆用heap表示,也就是各自的英文 ![]() 然后看变量 字符串 动态分配内存在哪个位置 1、局部变量的空间在栈空间里分配 ![]() ![]() ![]() ![]() ![]() ![]() ![]() 2、还有初始化了的全局变量在数据段里 ![]() ![]() ![]() 3、还有程序中出现的字符串在代码段中 ![]() ![]() ![]() ![]() 4、静态局部变量在数据段中 ![]() ![]() ![]() 5、malloc分配的内存在堆里 ![]() ![]() ![]() ![]() p是指向堆的那个空间q
q分配完要free掉,而且栈p置为NULL
总结: 局部变量的空间在栈里分配 初始化了的全局变量在数据段里 程序中出现的字符串在代码段中 静态局部变量在数据段中 malloc分配的内存在堆里 |
|