读书人

如何表示二进制

发布时间: 2012-03-28 15:40:03 作者: rapoo

怎么表示二进制
八进制前加0,十六进制前加0x
那我要让输入的数是二进制的,要怎么表示?

[解决办法]
二进制好像没有方法表示,就算在C++里面也是这样 。

内存里的数据都是以二进制补码形式存在的,为什么要用二进制表示?
可以用其他形式表示二进制啊
8进制数是以0开头的
[解决办法]
用bitset的话,用unsigned long 类型···

探讨

纯表示应该是没有的,好像只有上面那些的!
给个小例子你看看能用不
C/C++ code
#include<bitset>
#include<iostream>
int main()
{
int c=-5;
std::bitset<sizeof(int)*8> a(c);
std::cout<<a;
return 0;
}

[解决办法]
字符串
[解决办法]
STL 中的 bitset
[解决办法]
自己写一个嘛,很简单,移位,与运算完事!如果不想改变原值,声明一个替代变量即可!我写的如下,供参考
C/C++ code
#include <iostream>using namespace std;int main(){    int temp;    int bit[32];    cout<<"input a int num:";    cin>>temp;        for (int i = 0; i < sizeof(int) * 8;i++)    {        bit[i] = temp & 1;        temp >>=1;    }    for (i = 31; i >= 0; i--)    {        printf("%d", bit[i]);    }    return 0;} 

读书人网 >C++

热点推荐