所以我正在制作二进制>十进制程序,其中我需要定位输入数字中的特定数字,例如,如果输入是100110110,我如何定位第四个数字,在这种情况下显然是1,第五,第六,...有多少数字?
答案 0 :(得分:0)
如果输入是二进制字符串,请将输入存储在字符串中并使用循环
处理它string num = "1001010";
int l = num.length();
for(int i=0; i<l; i++) {
// num[i] is the (i+1)th bit from left;
}
答案 1 :(得分:-1)
有多少数字?
这些被称为位。要查找变量中的位数,请使用返回字节数的sizeof运算符。
sizeof(variable) * 8
我如何定位第四个数字
您可以使用operator&
测试一下:
if (8 == (variable & 8))
...
关于如何执行此操作已经有详细解答:How do you set, clear, and toggle a single bit in C/C++?