c/c++中二进制字符串转为整数
时间: 2023-11-11 15:00:45 浏览: 145
要将C/C++中的二进制字符串转换为整数,可以使用以下代码:
```c++
#include <iostream>
#include <string>
#include <cmath>
int binaryStringToInt(std::string binaryString) {
int result = 0;
int power = 0;
for (int i = binaryString.length() - 1; i >= 0; i--) {
int digit = binaryString[i] - '0';
result += digit * pow(2, power);
power++;
}
return result;
}
int main() {
std::string binary = "1101"; // 二进制字符串
int decimal = binaryStringToInt(binary); // 调用转换函数
std::cout << "二进制字符串 " << binary << " 转换为整数为 " << decimal << std::endl;
return 0;
}
```
以上代码首先定义了一个 `binaryStringToInt` 函数,它接受一个二进制字符串作为参数,并返回该字符串表示的整数。在 `main` 函数中,我们调用了 `binaryStringToInt` 函数,并将转换后的整数打印出来。
这段代码的关键在于循环遍历二进制字符串中的每一位,将每一位对应的值乘以 2 的次方(根据位置确定次方),然后累加起来得到最终的整数值。通过这个方法,就可以将二进制字符串转换为整数。
阅读全文