c++ 十进制转二进制字符串
时间: 2024-09-08 10:04:53 浏览: 95
C++实现十六进制字符串转换为十进制整数的方法
在C++中,将十进制整数转换为二进制字符串,可以使用内置的库函数`bitset`或者手动通过循环来进行位操作。以下是两种常见的方法:
1. **使用`bitset`**:
```cpp
#include <bitset>
#include <string>
std::string decimalToBinary(int decimal) {
std::stringstream ss;
std::bitset<32> binary(decimal); // 通常我们假设最多32位整数
ss << binary.to_string();
return ss.str();
}
```
在这个例子中,`bitset<32>`用于存储指定大小的二进制表示,然后将其转换成字符串。
2. **手动位操作**:
```cpp
#include <string>
std::string decimalToBinary(int decimal) {
std::string binary = "";
while (decimal > 0) {
binary = std::to_string(decimal % 2) + binary;
decimal /= 2;
}
return binary;
}
```
这里通过不断取余数和除以2的方式获取每一位,最后从低位到高位拼接起来。
阅读全文