02 05 栈的生长方向和内存存放方向(小端模式)

02 05 栈的生长方向和内存存放方向

小端模式:高位字节放在高地址,低位字节放在低地址
在这里插入图片描述

01 栈从高到低安排地址

#define _CRT_SECURE_NO_WARNINGS
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

void test1()
{
	int a = 1;
	int b = 1;
	int c = 1;
	printf("%p\n%p\n%p\n", &a, & b, &c);
}
void main() {
	test1();
	system("pause");
}

在这里插入图片描述

02 高低位字节与高低位地址的对应关系。比如int4字节,这4字节每字节的地址大小

在这里插入图片描述

#define _CRT_SECURE_NO_WARNINGS
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

void test2()
{
	int a = 0xaabbccdd;
	unsigned char* p = &a;
	printf("%p\n", *p);//低地址(看p+n),dd
	printf("%p\n", *(p+1));
	printf("%p\n", *(p + 2));
	printf("%p\n", *(p + 3));//高地址,aa
}
void main() {
	test2();
	system("pause");
}

在这里插入图片描述

©️2020 CSDN 皮肤主题: 1024 设计师:上身试试 返回首页