您的位置:首页 > 编程语言 > C语言/C++

【ThinkingInC++】14、联合体使用

2014-08-13 08:52 351 查看
/**
* 功能:联合体使用
* 时间:2014年8月13日08:55:39
* 作者:cutter_point
*/

#include<iostream>
#include<stdlib.h>

using namespace std;

union Packed
{
    char i;
    short j;
    int k;
    long l;
    float f;
    double d;   //这个联合体会用里面最大的变量需求的空间作为联合体的空间
    //这里联合体的空间大小是double的大小
};

int main()
{
    cout<<"sizeof(char)="<<sizeof(char)<<endl;
    cout<<"sizeof(short)="<<sizeof(short)<<endl;
    cout<<"sizeof(int)="<<sizeof(int)<<endl;
    cout<<"sizeof(long)="<<sizeof(long)<<endl;
    cout<<"sizeof(float)="<<sizeof(float)<<endl;
    cout<<"sizeof(double)="<<sizeof(double)<<endl;
    cout<<"-----------------------------------------------------------------------"<<endl;
    cout<<"sizeof(Packed)="
        <<sizeof(Packed)<<endl;

    Packed x;
    x.i='c';
    cout<<"x.i='c';sizeof(x.i)="<<sizeof(x.i)<<"\tx.i="<<x.i<<endl;

    x.d=3.1415926;
    cout<<"x.d=3.1415926;;sizeof(x.d)="<<sizeof(x.d)<<"\tx.d="<<x.d<<endl;

    cout<<"-----------------------------------------------------------------------"<<endl;
    cout<<"x.i="<<x.i<<endl;

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