第二十五章补充内容 13联合数据类型的内存占用 简单

//第二十五章补充内容 13联合数据类型的内存占用
//联合数据类型的每个成员共享同一块内存,那么这样做目的是什么呢?
//由于所有成员共享一块内存,这样,我们不用为每个成员分配一块内存,因此可以大大节省了内存,
/*#include <iostream>
using namespace std;
union U1
{
    char c;
	int i;
	double d;
};
struct S1
{
    char c;
	int i;
	double d;
};
union U2
{
	char c;
	int i;
};
struct S2
{
    char c;
	int i;
};
union U3
{
    char c;
};
struct S3
{
    char c;
};
int main()
{
	cout<<"联合体U1所占字节大小为:"<<sizeof(U1)<<endl;
	cout<<"联合体U2所占字节大小为:"<<sizeof(U2)<<endl;
	cout<<"联合体U3所占字节大小为:"<<sizeof(U3)<<endl;
	cout<<"------------------------------------------"<<endl;
	cout<<"结构体S1所占字节大小为:"<<sizeof(S1)<<endl;
	cout<<"其中"<<sizeof(char)<<"+"<<sizeof(int)<<"+"<<sizeof(double)<<"="<<sizeof(S1)<<endl;

	cout<<"-------------"<<endl;
	cout<<"结构体S2所占字节大小为:"<<sizeof(S2)<<endl;
	cout<<"其中"<<sizeof(char)<<"+"<<sizeof(int)<<"="<<sizeof(S2)<<endl;
	cout<<"-------------"<<endl;
	cout<<"结构体S3所占字节大小为:"<<sizeof(S3)<<endl;
	cout<<"其中"<<sizeof(char)<<"="<<sizeof(S3)<<endl;


	return 0;
}
*/

  

原文地址:https://www.cnblogs.com/xiangxiaodong/p/2725100.html