【C++练习】16.C++将一个十进制转换为二进制
目录
-
- 方法一:使用标准库函数`std::bitset`
- 方法二:使用`std::bitset`的`to_string`方法
- 方法三:手动实现除2取余法
- 方法四:使用位运算
- 方法五:使用递归
在C++中,将一个十进制数转换为二进制数有多种方法。以下是几种常见的方法,包括它们的思路和代码示例,以及代码含义的解释:
方法一:使用标准库函数std::bitset
思路:C++标准库提供了std::bitset
类,可以方便地将十进制数转换为二进制表示。
示例代码:
#include <iostream>
#include <bitset>int main() {int num = 42;std::bitset<32> binary(num); // 将十进制数转换为二进制,这里假设32位std::cout << "Binary representation of " << num << " is " << binary << std::endl;return 0;
}
代码含义解释:
#include <bitset>
:包含标准库bitset
头文件。std::bitset<32> binary(num)
:创建一个bitset
对象,大小为32位,并将十进制数num
转换为二进制。std::cout
:输出二进制表示。
方法二:使用std::bitset
的to_string
方法
思路:std::bitset
的to_string
方法可以直接将十进制数转换为二进制字符串,而不需要指定大小。
示例代码:
#include <iostream>
#include <bitset>int main() {int num = 42;std::string binary = std::bitset<32>(num).to_string