我正在尝试将一串二进制字符转换为整数值。
例如:“100101101001”我将使用 for 循环将其分成四个段,然后将其存储在数组 [4] 中。但是,每当我使用函数 atoi() 时,我都会遇到一个问题,即如果字符串以“0”开头,它不能正确转换字符串。
一个例子是“1001” = 1001,但如果是 0110,它将被转换为 110,同样对于 0001,它只会出现 1。
这是我制作的代码:
for(i = 0; i < strlen(store); i++)
{
bits[counter] = store [i];
counter++;
if(counter == 4)
{
sscanf(bits, "%d", &testing);
printf("%d\n", testing);
counter = 0;
}
}