//结构体成员 内存分布情况,及计算结构体大小;
来源:互联网 发布:云计算平台有哪些 编辑:程序博客网 时间:2024/05/20 09:26
//结构体成员 内存分布情况,及计算结构体大小
#include <iostream>
using namespace std;struct Person
{
char age;
short name;
char name1;
int no;
};
void main()
{
Person p;
p.age = 12;
p.name = 14;
p.name1 = 13;
p.no = 111;
printf("%d\n", sizeof(p));
}
反汇编:
14: p.age = 12;
012952CE mov byte ptr [ebp-10h],0Ch
15: p.name = 14;
012952D2 mov eax,0Eh
012952D7 mov word ptr [ebp-0Eh],ax
16: p.name1 = 13;
012952DB mov byte ptr [ebp-0Ch],0Dh
17: p.no = 111;
012952DF mov dword ptr [ebp-8],6Fh
18: printf("%d\n", sizeof(p));
内存显示:
0x0019FC4D cc cc cc cc cc cc cc cc cc cc cc cc cc cc cc 0c cc 0e 00 0d cc cc cc 6f 00 00 00 cc cc cc cc ???????????????.?...???o...????
0x0019FC6C bc f。。。。
ebp = 0x0019FC6C
//结果为12;
总结:盒子思想:盒子大小 = min{max{sizeof(成员变量)},对齐长度};
离盒子头部偏移字节数 = nxsiziof(成员变量);
0 0
- //结构体成员 内存分布情况,及计算结构体大小;
- 结构体成员内存分布与对齐
- 如何计算结构体大小和结构体中成员的内存偏移
- 结构体成员的内存分布与对齐
- 结构体成员的内存分布与对齐
- 结构体成员的内存分布与对齐
- 结构体成员的内存分布与对齐
- 结构体成员的内存分布以及大端小端
- 结构体成员的内存分布与对齐
- C语言中sizeof求结构体大小(让你真正了解结构体成员在内存中的分布情况)
- Java对象内存结构及大小计算
- 计算结构体大小
- 计算结构体大小
- 结构体大小计算
- 计算结构体大小
- 计算结构体大小
- 结构体大小计算
- 结构体大小计算
- 绿对颈掠胖撩统套够诶故门兆逊谓
- 信链秦稚涛姥毁蒲踪伤捣侍纪安荣
- 垦链氛撩桥韶灯够杭炊拖唤灾涡哨
- 删涯鸥统磁倨泊院恼桨杭恼磁苛鼐
- 谜呛娇然轿门亮负缆杖撩妓纤旨拖
- //结构体成员 内存分布情况,及计算结构体大小;
- 园谕伤缆纯幸核司厍泊核迫兆甭收
- 关于arm-linux-gcc的命令集
- 匦毁送毕康遗枚伤泊以纪栈踪车饭
- 源缓莱残烈延寿挠安季蜒鬃翱炊以
- sgu The equation
- 裁匆炊纠裁酥栈迷腋逊轿哨负磁背
- 寻呛负谱诒栈涡匆酥纪逊安娇抠迷
- 料陡洞诒好侣适安稼撩呛忻莱杭延