我想問是否有一種方法可以將整數作爲char值添加並創建一個字符串。我已經寫了一些代碼,但檢測添加整數作爲字符在C中創建一個字符串
void binary(int decimal) {
int modulus;
char bin[9];
while (decimal != 0) {
modulus = decimal % 2;
sprintf(bin, "%d", modulus);
if (modulus == 1) {
decimal--;
}
decimal = decimal/2;
}
puts(bin);
}
只有最後一個數字。如果小數點是10
則僅持有1
代替0101
。我該如何解決它?我正在使用Turbo C++ 3.0。
'sprintf(bin,「%d」,modulus);'你總是從前面寫。 – BLUEPIXY
這不是微不足道的,因爲它會寫入反轉的數字。我發佈了一個答案,但它打印出的二進制字符串顛倒了,所以不好。遞歸或反轉字符串後應解決它。 –
爲了不總是從前面寫入,每次寫入時都增加指針('bin')(但保留對返回字符串的開始的引用)。 –