Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1126086
  • 博文数量: 241
  • 博客积分: 4385
  • 博客等级: 上校
  • 技术积分: 2383
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-07 23:13
文章分类

全部博文(241)

文章存档

2013年(1)

2012年(8)

2011年(62)

2010年(109)

2009年(61)

分类: C/C++

2009-10-02 22:21:09

#include
#include
using namespace std;
bitset<32> GetBitSet(int num)
{
 bitset<32> bs(num);
 return bs;
}
char *Get16string(int num)
{
 char *buffer = new char[11];
 char *bufferAddr = buffer;
 buffer[0] = '0';
 buffer[1] = 'x';
 buffer[10] = '\0';
 buffer = buffer + 2;
 for(int i = 0; i < 8; i++)
 {
  buffer[i] = (char)(num << 4*i >> 28);
  if((buffer[i] & (1 << 7)) != 0)
   buffer[i] = buffer[i] + 16;
  if(buffer[i] < 10)
   buffer[i] += 48;
  else
   buffer[i] += 55;
 }
 return bufferAddr;
}
int main()
{
 int num = 456789;
 bitset<32> bs;
 bs = GetBitSet(num);
 char *num16String = Get16string(num);
 cout< 
 return 0;
}
阅读(1312) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~