在下面的代碼中,我將一個二進制轉換爲十進制,然後打印對應的字符。從二進制字符串轉換爲十進制?
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