【C++】C++的字节对齐

结构体为:

struct A {
int a;
char b;
double c;
};
struct B {
int a;
double c;
char b;
};
int main() {
printf("%d %d", sizeof(A), sizeof(B));
}

64位系统下,输出了 16 24

对于A来说,结构如下:
|int a(32位)|char b(8位)|占用(24位)| => 第0~7个字节
|double c(64位)| => 第8~15个字节
总共16个字节。

对B来说,结构性如下:
|int a(32位)|占用(32位)| => 第0~7个字节
|double c(64位)| => 第8~15个字节
|char b(8位)|占用(56位)| => 第16~23个字节
总共24个字节。

posted @   tudouuuuu  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 2分钟学会 DeepSeek API,竟然比官方更好用!
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· DeepSeek本地性能调优
· autohue.js:让你的图片和背景融为一体,绝了!
· 10亿数据,如何做迁移?
点击右上角即可分享
微信分享提示