c++如何将二进制数转化为十进制数
时间: 2024-10-21 11:04:02 浏览: 28
C++实现十进制数转为其它进制数
在 C++ 中,将二进制数转换成十进制数通常通过循环逐位相加的方式实现。你可以创建一个函数,从二进制字符串的右端开始处理每一位。这里是一个简单的示例:
```cpp
#include <string>
#include <sstream>
int binaryToDecimal(std::string binary) {
int decimal = 0;
for (size_t i = 0; i < binary.length(); ++i) {
if (binary[i] == '1') {
decimal += pow(2, binary.length() - 1 - i);
}
}
return decimal;
}
// 示例用法
std::string binaryStr = "1010";
int decimalNum = binaryToDecimal(binaryStr);
std::cout << "Binary " << binaryStr << " is equivalent to decimal " << decimalNum << std::endl;
```
在这个例子中,我们遍历输入的二进制字符串,每当遇到 '1',就将其对应的权重(2 的幂)加到 `decimal` 上,权重随着从右向左遍历逐渐减小。
阅读全文