Ниже приведен мой код для преобразования двоичного кода в десятичный, но я сомневаюсь, что когда я ввожу свои данные как 100000, он дает точный ответ. Как это дает правильный ответ, даже диапазон целого числа превышен?двоичное преобразование с десятичной точностью в c
int main()
{int rem,deci=0,a=1,b;
int bin;
printf("size of int :- %d",sizeof(int));
printf("enter the binary value");
scanf("%d",&bin);
while(bin!=0)
{
rem=bin%10;
deci=deci+rem*a;
a=a*2;
bin=bin/10;
}
printf("%d \n",deci);
}
Каков ожидаемый и фактический результат этой программы? –
100000 не находится за пределами диапазона 'int' практически на всех архитектурах/реализациях в наши дни. Если вы не видите строку 'size int: - 2', это не относится к вам. – Phylogenesis
Он работает здесь. В чем проблема ? –