我如何以多位数数字为目标

How do i target a specific digit in a multiple-digit number

本文关键字:数字 目标 多位数      更新时间:2023-10-16

因此,我正在制作一个二进制 ->十进制程序,其中我需要针对输入的数字中的特定数字,因此,例如,如果输入为100110110,则如何定位第四位,在这种情况下显然是1,第五,第六,...有多少位数字?

如果输入是二进制字符串,则将输入存储在字符串中,然后使用循环

对其进行处理
string num = "1001010";
int l = num.length();
for(int i=0; i<l; i++) {
    // num[i] is the (i+1)th bit from left;
}

有多少位数字有?

这些称为位。要在变量使用大小运算符中查找返回字节数的尺寸数量。

sizeof(variable) * 8

我如何定位第四位数

您可以使用operator&进行一些测试:

if (8 == (variable & 8))
    ...

已经有关于如何执行此操作的详细答案:如何在C/C 中设置,清除和切换一个位?