c++如何将十进制数转为二进制数
时间: 2024-09-15 22:14:34 浏览: 42
C++实现十进制数转为其它进制数
在C++中,你可以使用内置的库函数`bitset`或者手动通过循环来进行十进制数到二进制数的转换。以下是两种常见的方法:
1. 使用`bitset`:
```cpp
#include <bitset>
#include <iostream>
int main() {
int decimal = 42;
std::bitset<8> binary(decimal); // 8位二进制,可以根据需要调整位数
std::cout << "Binary representation: " << binary.to_string() << std::endl;
return 0;
}
```
这将打印出十进制42的8位二进制表示。
2. 手动转换(位操作):
```cpp
#include <iostream>
int decimalToBinary(int decimal) {
std::string binary = "";
while (decimal > 0) {
binary = std::to_string(decimal % 2) + binary;
decimal /= 2;
}
return binary.size() ? binary : "0"; // 如果结果为0,返回"0"
}
int main() {
int decimal = 42;
std::cout << "Binary representation: " << decimalToBinary(decimal) << std::endl;
return 0;
}
```
这里,我们用循环对每一位取余数,并将结果添加到二进制字符串前面,直到数字变成0。
阅读全文