堆栈地址空间增长方式

本文探讨了堆栈地址空间在x86计算机中的增长方式,堆从低地址向高地址扩展,栈则相反,从高地址向低地址缩减。通过示例代码展示了变量和结构体在内存中的分配位置。

地址空间排列方式同硬件差异有关

主流x86计算机模拟冯诺依曼体系结构构成虚拟软件空间

堆地址空间从小到大

栈地址空间从大到小

#include <iostream>
using namespace std;


int main()
{
int i;                  /*i栈中分配*/
int j;  /*j栈中分配*/
cout<<&i<<endl;

cout<<&j<<endl;

return 0;

}



#include <iostream>
using namespace std;


struct test
{
int i;
int j;
};




int main()
{
test *trst=new test();       /*结构体对分配空间*/
cout<<&trst->i<<endl;
cout<<&trst->j<<endl;  
return 0;
}







评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值