C++二进制转十进制
时间: 2024-08-15 09:07:51 浏览: 53
c++二进制转十进制源码
5星 · 资源好评率100%
在C++中,将二进制数转换成十进制数通常涉及到从右向左遍历二进制字符串,并将每一位乘以2的相应次方(从0开始,因为最右边的是最低位)。你可以通过手动计算或者利用内置函数`stoi()`或`bitset`来实现这个过程。
以下是手动计算的一个例子:
```cpp
#include <iostream>
int binaryToDecimal(const 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 binaryString = "1010";
int decimalValue = binaryToDecimal(binaryString);
std::cout << "Binary " << binaryString << " is equal to decimal " << decimalValue << std::endl;
return 0;
}
```
在这个示例中,`binaryToDecimal`函数接受一个二进制字符串,然后逐位加权求和,得到十进制值。
阅读全文