c程序的内存分布

c程序的内存分布

ID:31707736

大小:60.54 KB

页数:3页

时间:2019-01-17

c程序的内存分布_第1页
c程序的内存分布_第2页
c程序的内存分布_第3页
资源描述:

《c程序的内存分布》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、C程序的内存分布C程序一般分为1•程序段:程序段为程序代码在内存中的映射•一个程序可以在内存中多有个副本.2.初始化过的数据:在程序运行值初已经对变量进行初始化的3.未初始化过的数据:在程序运行初未对变量进行初始化的数据4.堆(stack):存储局部,临时变量,在程序块开始时自动分配内存,结束时自动释放内存.存储函数的返回指针.5.栈(heap):存储动态内存分配,需要程序员手工分配,手工释放.附程序分布图:highaddressstackheapuninitializeddata(bss)initializ

2、eddatalowaddresstextcommand-linearguments;andenvironmentvariables[initializedto

3、zerobyexecreadfrom>programfilebyexec#includeintgl=0,g2=0,g3=0;intmax(inti){intml=0,m2,m3=0,*p_max;staticnl_max=0,n2_max,n3_max=0;p_max=(int*)malloc(10);printf(H打印max程序

4、地址“);printf("inmax:0x%08x",max);printf(M打印max传入参数地址“);printf(uinmax:0x%08x”,&i);printfC*打印max函数屮静态变量地址“);printf(u0x%08x”,&nl_max);//打印各本地变量的内存地址printfC*0x%08xM,&n2_max);printf("0x%08x",&n3_max);printfC*打印max函数中局部变量地址");printfC0x%08x

5、n”,&ml);〃打印各本地变量的内存地址printf(u0x%08xM,&m2);printf("0x%08xu,&m3);printf("打印max函数中malloc分配地址");printf(u0x%08xM,p_max);//打印各本地变量的内存地址if(i)return1;elsereturn0;intmain(intargc,char**argv){staticintsl=0,s2,s3=0;intvl=0,v2,v3=0;int*p;p=(int*)malloc(10);pr

6、intfC*打印各全局变量(已初始化)的内存地址”);printf(H0x%08x”,&gl);〃打印各全局变量的内存地址printf(°0x%08xM,&g2);printf(nOx%O8x”,&g3);printf(u======================u);printfC*打印程序初始程序main地址“);printf("main:0x%08x",main);printfC打印主参地址”);printf("argv:0x%08x",argv);prin

7、tfC,打印各静态变量的内存地址”);printf(u0x%08xH,&sl);//打印各静态变量的内存地址print"0x%08xH,&s2);printf(n0x%08xn,&s3);printfC*打印各局部变量的内存地址『);print"0x%08xM,&v1);//打印各本地变量的内存地址printf(u0x%08xH,&v2);printf(H0x%08x'&v3);printf(”打印malloc分配的堆地址“);printf("malloc:0x%0

8、8x",p);printf(u======================u);max(vl);printfC*打印子函数起始地址”);printf("max:0x%08x'r,max);return0;打印各全局变量(己初始化〉的内存0x00427c440x00427c480x00427c4c打印程序初始程序main地址main:0x0040100a打印主参地址argu:0x00030ed0打印各静态变量的內存地址0x00427c580x00427c400x00427c5c打印各局部变量

9、的內存地址0x0013ff7c0x0013ff780x0013ff74打印malloc分配的堆地址malloc:0x000307a8打印max程序地址inmax:0x00401005打印max传入参数地址inmax:0x0013ff20打印max函数中静态变量地址0x00427c500x00427c3c0x00427c54打印max函数中局部变量地址0x0013ffl40x0013ffl00x001

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。