请问如何使用位操作将10进制数转换为2进制?使用 <<,>>,&等运算获得一个10进制转换后的2进制哪位能说说 谢谢

解决方案 »

  1.   

    char *_itoa( int value, char *string, int radix );
    Example 
      _itoa( i, buffer, 2  );
       printf( "String of integer %d (radix 2): %s\n", i, buffer );
    Output
      _itoa( i, buffer, 2  );
       printf( "String of integer %d (radix 2): %s\n", i, buffer );
      

  2.   

    int n = 100;
    int m = 0x80000000;
    while(m){
        if(m & n) cout << 1;
        else cout << 0;
        m >>= 1;
    }只能专成字符表示,C里面没有二进制
      

  3.   

    while(m)
    {
    if(m & n) 
    cout << '1';
    else 
    cout << '0';
    m = m >> 1;
    }
    才对吧
      

  4.   

    一样, 标准库对所有内置类型度提供了 << 重载