1、栈的生长方向
#include <stdio.h>
int main()
{
int a = 10;
int b = 10;
int c = 10;
printf("%p\n",&a);
printf("%p\n",&b);
printf("%p\n",&c);
retrun 0;
}
可以看出,栈底是高地址,栈顶是低地址,栈的开口是在下面
2、内存的存放方向
#include <stdio.h>
int main()
{
int a = 0x11223344;
char* p = (char*)&a;
printf("%x\n", *p);
printf("%x\n", *(p + 1));
return 0;
}
33是高位字节数据, 说明高地址区存放的是高位地址数据,低位存放的是低地址数据,叫做小端对齐,反之是大端对齐