您的位置:首页 > 其它

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

2012-10-15 21:55 169 查看
//第二十五章补充内容 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;
}
*/


  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: