首先我们要先明白内存分区类型
1.代码区:存放函数体的二进制代码,由系统进行管理
2.全局区:全局变量和静态变量及常量
3.栈区:由编译器自动分配和释放,存放函数的参数值,局部变量等(注意在使用时不要返回
局部变量的地址)
4.堆区:由程序员分配和释放,若不释放则在程序结束由系统释放(主要利用new在堆区开辟
空间)提示:指针本是栈区上的,指针保存的数据是在堆区上的
程序运行前:
代码区:1.存放cpu执行的机器指令
2.代码区是共享的
3.代码区是只读的
全局区:存放字符串常量和其他常量(comst修饰),全局变量和静态变量存放于此,
还包含了常量区,字符串常量,和其他常量(该区域的数据在程序结束后由系统释放)
const修饰的全局变量/局部变量
局部变量:(不在全局区中) 全局变量:(全局区)
const修饰的局部变量(常量) 静态变量,static关键字
,常量{ 字符串常量
const修饰的全局变量}