創建二進制到十進制轉換器;有大部分的裸骨頭,但我有一個問題 - 程序從左到右讀取二進制數,而不是從右到左(正如通常通過手寫計算一樣)。正因爲如此,「1111」,「10001」和「10101」等輸入作爲正確的小數回答出現,但某些輸入如「10011」顯然不正確。二進制到十進制轉換器的字符數組
TL; DR哪種方式最適合於翻轉循環如何通過char數組?
示例代碼:
for (i = 0; i < 33 && binary[i] != '\0'; i++, power++)
{
if (binary[i] == '0')
continue;
else if (binary[i] == '1')
decimal = pow (2,power) + decimal;
else
{
cout << "Invalid input." << endl;
return 0;
}
}
這會取代我的其他for循環?因爲當我嘗試這個時,我每次都會收到「無效輸入」。 – majortom
是的。你需要替換你的。 –