c++ 十进制转二进制字符串
69浏览 · 2024-09-08 09:04:53
在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的方式获取每一位,最后从低位到高位拼接起来。
相关问题
在 C++ 中,将十进制整数转换成二进制字符串通常可以使用内置函数 `bitset` 或者手动通过循环进行位操作。以下是两种常见方法:
1. 使用 `bitset` 和 `to_string` 函数:
```cpp
#include <bitset>
#include <string>
std::string decimalToBinary(int decimal) {
std::bitset<32> binary(decimal); // 32位足够表示32位整数,可根据需要调整位数
return binary.to_string();
```