2
我需要创建一个将一个数字系统转换为其他数字系统的程序。我在Windows(Dev C++)中使用itoa,唯一的问题是我不知道如何将二进制数转换为其他数字系统。所有其他数字系统转换工作相应。这是否涉及存储要使用%转换的输入?在C程序中存储“二进制”数据类型
这是我工作的一个片段:
case 2:
{
printf("\nEnter a binary number: ");
scanf("%d", &num);
itoa(num,buffer,8);
printf("\nOctal %s",buffer);
itoa(num,buffer,10);
printf("\nDecimal %s",buffer);
itoa(num,buffer,16);
printf("\nHexadecimal %s \n",buffer);
break;
}
对于小数我用%d,八进制我用‰和十六进制我使用%×。什么可能是二进制正确的?感谢未来的答案!
基本上是一个副本:http://stackoverflow.com/questions/2343099/convert-binary-format-string-to-int-in-c –
简答:没有。大家可以做的只是读取一个字符串(例如,用'%s')然后转换(例如用'strtol')。 –
你知道'itoa'是非标准的,它可能在其他系统上崩溃? – nhahtdh