首页
社区
课程
招聘
[原创分享]VC++进制转换程序
发表于: 2010-2-21 01:10 6228

[原创分享]VC++进制转换程序

2010-2-21 01:10
6228
/*****************************************************************************
     
file name	: data_exchange.h
author		: succeswing  
date		: 2010.1.1
description	: the profil is BinaryConversion
Noticed		: should be complied with VC6.0 
version		: 1.0
E-mail		: succeswing#gmail.com(the # is @)
		
	
******************************************************************************/

#include <string>
#include <cmath> 
#include <stdlib.h>

CString BinToDec(CString strbin)
{
  int len;
  int i;
  long dec;
  CString strdec;
  dec=0;
  len=strbin.GetLength();
  for(i=0;i<len;i++)
  {
    if(strbin[len-i-1]!='0')
	{
	  dec=dec+pow(2,i);  
	}
  }
  strdec.Format("%d",dec);
  return strdec;  
}

CString DecToBin(CString strdec)
{
    int dec;
	CString strbin;
    dec=atoi(strdec);
   while(dec!=0)
   {
    if(dec%2)
    {
	  dec=dec/2;
	  strbin.Insert(0,"1");
    }
	else
	{
	  dec=dec/2;
	  strbin.Insert(0,"0");
	}
   }
   strbin.Insert(0,"0");
   return strbin;
}

CString DecToHex(CString strdec)
{CString strhex;
 int dec;
 dec=atoi(strdec);
 strhex.Format("%x",dec);
 return strhex;
}

CString HexToDec(CString strhex)
{CString strdec;
 DWORD hex;
  hex=strtoul(strhex, NULL, 16);
  strdec.Format("%d",hex);
  return strdec; 
}

CString BinToHex(CString strbin)
{ CString strhex;
  strhex=DecToHex(BinToDec(strbin));   
  return strhex;
}

CString HexToBin(CString strhex)
{
   CString strbin;
   strbin=DecToBin(HexToDec(strhex));
   return strbin;
}

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 7
支持
分享
最新回复 (6)
雪    币: 52
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
如果数值很大,不能实现

多大,是不是超出int能表达的范围了吧
2010-2-21 09:32
0
雪    币: 458
活跃值: (421)
能力值: ( LV9,RANK:610 )
在线值:
发帖
回帖
粉丝
3
那你就用大数运算库啊    Google一下  n多!
2010-2-21 10:28
0
雪    币: 68
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
大了可以用数组。。
2010-2-21 19:32
0
雪    币: 52
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
5
把数组类型重新定义可不可以提高大数字的转换呢
2010-2-21 23:33
0
雪    币: 217
活跃值: (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
谢谢大家了。。。
2010-2-25 04:38
0
雪    币: 2559
活跃值: (176)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
7
atoi 和 pow这些c库函数在你这个里面最好不要用吧,不然就没多大意思了!!!
2010-2-28 07:57
0
游客
登录 | 注册 方可回帖
返回
//