您的位置:首页 > 其它

返回十进制转换成二进制数的第i位

2016-05-14 20:32 295 查看
#include <iostream>

using namespace std;
typedef unsigned long long ull;
ull bits(ull x,int i)
{
return (x >> i) & 1ULL;
}
int main()
{
int testCase,i;
while (cin>>testCase>>i)
{
cout<<bits(testCase,i)<<endl;
}
return 0;
}
///返回x的第i位

举个栗子

11 二进制表示为 1011

1 0 1 1

3 2 1 0

将1011 右移 1位 变成 101

再 & 1

就是

101

& 001

——————

001

即第i位 为1.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: