C++ 用sizeof求struct的大小

  • 原文链接:https://blog.csdn.net/RadianceBlau/article/details/60867307

原则

  1. 每个结构体成员的起始地址为该成员大小的整数倍,即int型成员的起始地址只能为0、4、8,short类型成员起始地址只能为0,2,4…
  2. 结构体的大小为其中最大成员大小的整数倍
struct A{
	char a;
	int b;
	short c;
};
struct B{
	char a;
	short b;
	int c;
};
int main(int argc, char *argv[])
{
	printf("sizeof(struct A)=%d, sizeof(struct B)=%d\n", sizeof(struct A), sizeof(struct B));// 12 8
	return 1;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章