📅  最后修改于: 2023-12-03 14:39:54.952000             🧑  作者: Mango
在C++中,我们可以使用向量(vector)容器来存储和操作数字。对于将十进制数转换为二进制数,我们可以使用以下方法。
#include <iostream>
#include <vector>
// 将十进制数转换为二进制数
std::vector<int> decimalToBinary(int decimal) {
std::vector<int> binary;
while (decimal > 0) {
binary.push_back(decimal % 2);
decimal /= 2;
}
return binary;
}
int main() {
int decimal = 10;
std::vector<int> binary = decimalToBinary(decimal);
// 输出二进制数
for (int i = binary.size() - 1; i >= 0; i--) {
std::cout << binary[i];
}
return 0;
}
此方法通过使用循环和移位运算将十进制数转换为二进制数。我们将余数(0或1)从每个除法操作中添加到向量中,并将十进制数除以2。然后,我们按相反顺序输出向量中的元素,以获取正确的二进制表示。
#include <iostream>
#include <bitset>
int main() {
int decimal = 10;
std::bitset<sizeof(int) * 8> binary(decimal);
// 输出二进制数
std::cout << binary << std::endl;
return 0;
}
方法二使用bitset
库中的类std::bitset
来直接将十进制数转换为二进制数。我们可以使用std::bitset
类的构造函数将十进制数传递给它,并且可以通过<<
运算符直接输出二进制数。
以上是两种常见的将十进制数转换为二进制数的方法。你可以根据自己的需要选择适合的方法来进行转换。