开门见山的说
struct stu
{
char name;
int age;
}s1;
#include<stdio.h>
int main()
{
printf("%d", sizeof(s1));
}
这种情况的原因是结构体体存在内存对齐
为什么有内存对齐
修改默认对齐数
#pragma pack() 这个预处理指令,可以改变我们的默认对齐数。
#include<stdio.h>
#pragma pack(1)
struct stu
{
char name;
int age;
}s1;
int main()
{
printf("%d", sizeof(s1));
return 0;
}
哈,谢谢各位同志的阅读,然后呢如果觉得本文对您有所帮助的话,还给个免费的赞吧
Thanks♪(・ω・)ノ
(期待一下,要是有分享和收藏更好啦