地址空间排列方式同硬件差异有关
主流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;
}
本文探讨了堆栈地址空间在x86计算机中的增长方式,堆从低地址向高地址扩展,栈则相反,从高地址向低地址缩减。通过示例代码展示了变量和结构体在内存中的分配位置。
1512

被折叠的 条评论
为什么被折叠?



