C++实现十进制转二进制运算
时间: 2024-10-09 19:11:04 浏览: 16
在C++中,将十进制数转换成二进制数可以使用内置的`bitset`库或者是手动通过循环进行位操作。以下是两种常见的方法:
1. **使用`bitset`**:
```cpp
#include <bitset>
int decimalToBinary(int decimal) {
std::bitset<8> binary(decimal); // 如果需要指定二进制位数,如8位,可以调整这里的数字
return binary.to_string();
}
int main() {
int decimal_num = 42;
std::string binary_num = decimalToBinary(decimal_num);
std::cout << "Decimal " << decimal_num << " in binary is " << binary_num << std::endl;
return 0;
}
```
2. **手动位操作**:
```cpp
int decimalToBinary(int decimal) {
std::string binary;
while (decimal > 0) {
binary = std::to_string(decimal % 2) + binary; // 取余数并添加到字符串前面
decimal /= 2; // 整除10
}
return binary;
}
int main() {
int decimal_num = 42;
std::string binary_num = decimalToBinary(decimal_num);
std::cout << "Decimal " << decimal_num << " in binary is " << binary_num << std::endl;
return 0;
}
```