从c++的vs studio里面来看,正常来说内存的分配是由低到高一次分配的。
但是对于系统栈来说,我们习惯从高到低来看
高地址
ebp
esp
低地址
这就是系统栈,系统栈分配变量的时候是由高到低的,也就是先分配高地址再分配低地址,很明显就是esp自减4,然后把减去的那块内存用来存储压栈的东西。
这样有一个好处,那就是在分配数组的时候,先分配a[0]在分配a[1]这样a数组的首地址就是低地址,可以顺利的访问后面的元素。

从c++的vs studio里面来看,正常来说内存的分配是由低到高一次分配的。
但是对于系统栈来说,我们习惯从高到低来看
高地址
ebp
esp
低地址
这就是系统栈,系统栈分配变量的时候是由高到低的,也就是先分配高地址再分配低地址,很明显就是esp自减4,然后把减去的那块内存用来存储压栈的东西。
这样有一个好处,那就是在分配数组的时候,先分配a[0]在分配a[1]这样a数组的首地址就是低地址,可以顺利的访问后面的元素。