编写一个程序(C++),实现2\8\10\16进制之间的转换

来源:百度知道 编辑:UC知道 时间:2024/06/19 21:23:47

写了个类 ,dev c++ 通过 , 用法很简单

#include <cstdlib>
#include <iostream>

using namespace std;

class Converter
{
public:
Converter & ReadBinary(char * s)
{
N = 0;
while((*s++)!=NULL) N=N*2+(*(s-1) - '0');
return *this;
}

Converter & ReadOctal(char * s)
{
sscanf(s , "%o" , &N);
return *this;
}

Converter & ReadDec(char * s)
{
sscanf(s , "%d" , &N);
return *this;
}

Converter & ReadHex(char * s)
{
sscanf(s , "%x" , &N);
return *this;
}

char * WriteBinary()
{
itoa(N , S , 2);
return S;
}

char * WriteOctal()