整型数据转二进制转字符方法(2)

整型转二进制型转字符型 
#include <iostream>
#include <stdlib.h>

using namespace std;

struct BitFied{
    unsigned char a1:1;
    unsigned char b1:1;
    unsigned char c1:1;
    unsigned char d1:1;
    unsigned char e1:1;
    unsigned char f1:1;
    unsigned char g1:1;
    unsigned char h1:1;

    unsigned char a2:1;
    unsigned char b2:1;
    unsigned char c2:1;
    unsigned char d2:1;
    unsigned char e2:1;
    unsigned char f2:1;
    unsigned char g2:1;
    unsigned char h2:1;

    unsigned char a3:1;
    unsigned char b3:1;
    unsigned char c3:1;
    unsigned char d3:1;
    unsigned char e3:1;
    unsigned char f3:1;
    unsigned char g3:1;
    unsigned char h3:1;

    unsigned char a4:1;
    unsigned char b4:1;
    unsigned char c4:1;
    unsigned char d4:1;
    unsigned char e4:1;
    unsigned char f4:1;
    unsigned char g4:1;
    unsigned char h4:1;
};

union Test{
    struct BitFied binary;
    int iTest;
    unsigned char chTest[4];
};

int main()
{
    Test *test = (Test *)malloc (sizeof (Test));
    memset (test, 0, sizeof (Test));


    /*要转成字符型的整型变量*/
    test->iTest = 6423742723472123;
    cout << "整型型数据" << endl;
    cout << test->iTest << endl; 

    cout << endl;

    /*输出二进制数据*/
    cout << "二进制型数据" << endl;
    printf ("%u", test->binary.h4);
    printf ("%u", test->binary.g4);
    printf ("%u", test->binary.f4);
    printf ("%u", test->binary.e4);
    printf ("%u", test->binary.d4);
    printf ("%u", test->binary.c4);
    printf ("%u", test->binary.b4);
    printf ("%u", test->binary.a4);

    printf ("%u", test->binary.h3);
    printf ("%u", test->binary.g3);
    printf ("%u", test->binary.f3);
    printf ("%u", test->binary.e3);
    printf ("%u", test->binary.d3);
    printf ("%u", test->binary.c3);
    printf ("%u", test->binary.b3);
    printf ("%u", test->binary.a3);

    printf ("%u", test->binary.h2);
    printf ("%u", test->binary.g2);
    printf ("%u", test->binary.f2);
    printf ("%u", test->binary.e2);
    printf ("%u", test->binary.d2);
    printf ("%u", test->binary.c2);
    printf ("%u", test->binary.b2);
    printf ("%u", test->binary.a2);

    printf ("%u", test->binary.h1);
    printf ("%u", test->binary.g1);
    printf ("%u", test->binary.f1);
    printf ("%u", test->binary.e1);
    printf ("%u", test->binary.d1);
    printf ("%u", test->binary.c1);
    printf ("%u", test->binary.b1);
    printf ("%u", test->binary.a1);

    cout << endl;
    cout << endl;

    /*输出字符型的数据*/
    cout << "字符型数据" << endl;
    cout << test->chTest << endl;        

   system ("pause");
    return 0;
}


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值