65,211
社区成员
发帖
与我相关
我的任务
分享
#include<iostream>
#include <string>
#include <fstream>
using namespace std;
int ConvertBinToDec(const char *pBin);
int main()
{
ifstream in("a.txt");
for (string s; getline(in,s); )
{
if (s == "-1")
return 0;
char* c = new char[s.size()];
for (int i=0; i < s.size(); i++)
{
c[i] = s.at(i);
}
ConvertBinToDec(c);
}
return 0;
}
int ConvertBinToDec(const char *pBin)
{
int res=0;
if (strlen(pBin) > 64)
{
cout << "Out of range" << endl;
return 0;
}
while (*pBin == '0' || *pBin == '1')
{
if(res)
res <<= 1;
res += (*pBin - '0');
*pBin++;
}
cout << res << endl;
}