在下面的代码中,我将一个二进制转换为十进制,然后打印对应的字符。从二进制字符串转换为十进制?
void convertToChar(int binaryChar[],int length)
{
int multiplier = 0;
int i;
int sum = 0;
for(i=length;i>=0;i++)
{
sum = sum + (binaryChar[i]*pow(2,multiplier));
multiplier = multiplier + 1;
}
printf("\nThe character is: %c",sum);
}
的问题是在该行sum = sum + (binaryChar[i]*pow(2,multiplier));
。它引发错误:从double'
。请帮助warning: converting to
INT”!
时可以被截断(使用同一类型 - >用双) – cristian
你从二进制字符串(如“1010101”)转换,对吧?我在问题标题中添加了“字符串”,因为这更好地描述了你想要做的事情。虽然实际上从二进制字符串转换为二进制。 –
我不是从double转换为int我所有的数据类型都是整数 – station