c++实现二进制转十进制
时间: 2024-11-21 22:24:45 浏览: 15
在C++中,将二进制数转换成十进制数可以利用基本的数学运算和位操作。一种常见的方法是逐位相加,从右向左处理每一位,每遇到一个1就加上2的相应次幂。下面是一个简单的函数示例:
```cpp
#include <iostream>
#include <string>
int binaryToDecimal(std::string binary)
{
int decimal = 0;
int power = 0;
for (int i = binary.length() - 1; i >= 0; i--) {
if (binary[i] == '1') {
decimal += pow(2, power);
}
power++;
}
return decimal;
}
int main()
{
std::string binaryInput = "1010";
int decimalResult = binaryToDecimal(binaryInput);
std::cout << "Binary " << binaryInput << " is equal to decimal " << decimalResult << "." << std::endl;
return 0;
}
```
在这个例子中,`binaryToDecimal`函数接受一个字符串形式的二进制数,然后通过遍历每个字符并将其对应的2的幂累加到`decimal`变量上,最终返回十进制结果。
阅读全文