Chinaunix首页 | 论坛 | 博客
  • 博客访问: 493452
  • 博文数量: 63
  • 博客积分: 1187
  • 博客等级: 少尉
  • 技术积分: 706
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-05 16:53
个人简介

Must Be

文章分类

全部博文(63)

文章存档

2019年(1)

2017年(4)

2016年(6)

2015年(2)

2014年(1)

2013年(3)

2012年(10)

2011年(36)

我的朋友

分类: C/C++

2011-03-23 10:08:53

#include <iostream>
using namespace std;


static const char *tohex = "0123456789ABCDEF";
void CharToHex(unsigned char *out,const unsigned char *in,int len)
{
    int i = 0;
    while(i < len)
    {
        *out++ = tohex[in[i] >> 4];
        *out++ = tohex[in[i] & 0x0F];
        ++i;
    }
}

void bitcount(char* x,int size)
{
      for(int i=0;i<size;i++)
      {
          for(int j=0;j<sizeof(char)*8;j++)
                (*(x+i) & (0X80>> j)) ? cout << "1 " : cout << "0 ";
          if (i < size-1)cout << ", ";
      }
}

  int main(int argc, char *argv[])
  {
     int i;
     unsigned char *out;
     CharToHex(out,(const unsigned char*)"中文",4);
     cout << "Hex:" << out << endl;
     cout << "Binary:";
     bitcount((char *)"中文",4);
     cout << endl;
      return 0;
  }



程序输出:
Hex:D6D0CEC4
Binary:1 1 0 1 0 1 1 0 , 1 1 0 1 0 0 0 0 , 1 1 0 0 1 1 1 0 , 1 1 0 0 0 1 0 0
阅读(2361) | 评论(0) | 转发(0) |
0

上一篇:Linux curl使用简单介绍

下一篇:2011-04-01

给主人留下些什么吧!~~