c++ 二进制与十进制互转
程序员文章站
2022-07-15 09:34:40
...
long long ConVertDec2Bin(int a)//十进制转二进制
{
long long bin = 0;//返回值变量
int n = a; //参数
int re,i=1;//余数
while (n != 0)
{
re = n % 2; //n取余
//n /= 2;//取整
n >>= 1;//取整
bin += re * i;
i *= 10;
}
return bin;
}
int ConVerBin2Dec(char a[8])//二进制转十进制
{
int j = 0, dec = 0;
char c[8] = { 0 };
j = 0;
for (int i = 7; i >= 0; --i)
{
if ((a[i] != '1') && (a[i] != '0'))
{
return 0;
break;
}
else
{
//dec += (a[i] - '0') * static_cast<int>(pow(2, j));
dec += (a[i] - '0') * (2 << j);
}
++j;
}
dec >>= 1;
return dec;
}
上一篇: 十进制与二进制小数的相互转换C语言