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

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

2010-2-21 01:10
6306
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
/*****************************************************************************
      
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;
}

[注意]看雪招聘,专注安全领域的专业人才平台!

收藏
免费 7
支持
分享
赞赏记录
参与人
雪币
留言
时间
Youlor
为你点赞~
2024-5-31 01:02
伟叔叔
为你点赞~
2024-1-15 03:05
QinBeast
为你点赞~
2024-1-10 00:24
shinratensei
为你点赞~
2024-1-3 03:04
PLEBFE
为你点赞~
2023-12-11 00:03
心游尘世外
为你点赞~
2023-11-27 00:42
飘零丶
为你点赞~
2023-11-17 00:20
最新回复 (6)
雪    币: 52
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
如果数值很大,不能实现

多大,是不是超出int能表达的范围了吧
2010-2-21 09:32
0
雪    币: 458
活跃值: (426)
能力值: ( 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
游客
登录 | 注册 方可回帖
返回

账号登录
验证码登录

忘记密码?
没有账号?立即免费注册