C++十进制转二进制函数
时间: 2023-09-29 19:03:17 浏览: 114
下面是一个将十进制数转换为二进制数的C++函数:
```c++
#include <bitset>
string decToBinary(int n) {
// 将十进制数转换为二进制字符串
string binary = bitset<32>(n).to_string();
// 找到第一个非零位
size_t pos = binary.find('1');
// 如果没有找到,说明 n 为 0
if (pos == string::npos) {
return "0";
}
// 返回非零位及其后面的字符串
return binary.substr(pos);
}
```
使用 `bitset` 类可以方便地将一个整数转换为二进制字符串。函数首先将整数 `n` 转换为长度为 32 的二进制字符串,然后找到第一个非零位的位置,最后返回该位置及其后面的字符串。
示例:
```c++
int n = 42;
string binary = decToBinary(n);
cout << binary << endl; // 输出 101010
```
阅读全文