内存常见划分区域,怎么快速记住?
共 6376字,需浏览 13分钟
·
2024-07-24 22:14
关注、星标公众号,直达精彩内容
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
临时创建的局部变量存放在栈区。 -
函数调用时,其入口参数存放在栈区。 -
函数返回时,其返回值存放在栈区。 -
const定义的局部变量存放在栈区。
static unsigned int val1 = 1; //val1存放在.data段unsigned int val2 = 1; //初始化的全局变量存放在.data段unsigned int val3 ; //未初始化的全局变量存放在.bss段const unsigned int val4 = 1; //val4存放在.rodata(只读数据段)
unsigned char Demo(unsigned int num) //num 存放在栈区{ char var = "123456"; //var存放在栈区,"123456"存放在常量区 unsigned int num1 = 1 ; //num1存放在栈区 static unsigned int num2 = 0; //num2存放在.data段 const unsigned int num3 = 7; //num3存放在栈区 void *p; p = malloc(8); //p存放在堆区 free(p); return 1;}
void main(){ unsigned int num = 0 ; num = Demo(num); //Demo()函数的返回值存放在栈区。}
本文由作者『行墨』原创并授权发布,来源地址: https://blog.csdn.net/lin_duo/article/details/103019390
版权声明:本文来源网络,免费传达知识,版权归原作者所有。如涉及作品版权问题,请联系我进行删除。
‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧ END ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧
关注我的微信公众号,回复“星球”加入知识星球,有问必答。
点击“阅读原文”查看知识星球详情,欢迎点分享、收藏、点赞、在看。
评论
