c++ int转二进制

在 C++ 中,可以使用位运算符和位移运算符将整数转换为二进制数。

具体来说,可以使用“&”位与运算符和“<<”位左移运算符来逐位提取整数的二进制表示。例如,以下是将一个整数转换为二进制字符串的示例代码:

#include <iostream>
using namespace std;
void intToBinary(int num) {
    // 遍历整数的每一位
    for (int i = sizeof(num) * 8 - 1; i >= 0; i--) {
        int bit = (num & (1 << i)) ? 1 : 0; // 通过位与运算符和位左移运算符获取当前位的值
        cout << bit;
int main() {
    int num = 123;
    intToBinary(num);
    return 0;

在上面的示例中,intToBinary()函数接受一个整数参数num,并将其转换为二进制字符串。该函数首先使用sizeof()函数获取整数的位数,然后遍历整数的每一位,并使用位与运算符和位左移运算符提取当前位的值。最后,该函数将每个二进制位的值输出到控制台。

例如,如果将数字123传递给intToBinary()函数,它将输出以下二进制字符串:

00000000000000000000000001111011