int大小和字节对齐
2022-01-19 本文已影响0人
我帅的不忍直视
![](https://img.haomeiwen.com/i4150512/1625629ac67458b0.png)
int大小不论是在64位机还是32位机上都是4字节大小
这个和golang是不一样的
另c/c++默认是最大字节对齐的,sizeof(A) == 16,但是sizeof(int) == 4,可见是8字节对齐的。
使用 #param pack(1)单字节对齐,sizeof(A) == 12,可见虚表指针大小是8字节。
![](https://img.haomeiwen.com/i4150512/d9f0f6b7ed9a5c58.png)
int大小不论是在64位机还是32位机上都是4字节大小
这个和golang是不一样的
另c/c++默认是最大字节对齐的,sizeof(A) == 16,但是sizeof(int) == 4,可见是8字节对齐的。
使用 #param pack(1)单字节对齐,sizeof(A) == 12,可见虚表指针大小是8字节。