c++将有能十进制int转化为二进制字符串的函数吗?
时间: 2024-03-20 21:40:16 浏览: 30
是的,C++标准库中提供了将整数转换为二进制字符串的函数,可以使用 std::bitset 类来实现。示例代码如下:
```c++
#include <bitset>
#include <string>
std::string intToBinaryString(int num) {
return std::bitset<sizeof(int) * 8>(num).to_string();
}
```
这里使用了 C++11 中的 std::bitset 类,它可以将整数转换为二进制表示形式。函数中的 sizeof(int) * 8 表示整数所占的位数,使用 to_string() 可以将二进制表示形式转换为字符串。
相关问题
c++将十进制int转化为二进制字符串的函数
可以使用以下代码将十进制整数转换为二进制字符串:
```c++
#include <bitset>
#include <string>
std::string intToBinaryString(int num) {
return std::bitset<sizeof(int) * 8>(num).to_string();
}
```
这里使用了 C++11 中的 std::bitset 类,它可以将整数转换为二进制表示形式。函数中的 sizeof(int) * 8 表示整数所占的位数,使用 to_string() 可以将二进制表示形式转换为字符串。
写一段C++代码,将一个十进制整数转化为二进制下的字符串
好的,以下是一段将十进制整数转换为二进制字符串的 C++ 代码:
```
#include <string>
std::string decToBin(int n) {
std::string bin = "";
while (n > 0) {
bin = std::to_string(n % 2) + bin;
n /= 2;
}
return bin;
}
```
这段代码使用了一个 while 循环,每次将余数加到字符串的最前面,再将原数除以 2。当原数变为 0 时,循环结束,返回得到的二进制字符串。
您可以调用这个函数并传入需要转换的十进制整数,例如:
```
int n = 42;
std::string bin = decToBin(n);
std::cout << bin << std::endl; // 输出 101010
```
希望这段代码能够帮助您解决问题。