[問題] 關於十進位轉二進位小問題
末學自行寫了一個進位轉換問題
雖然寫出來了
但為了想更進一步了解其中一個指令用法
於是做了一個小小的變動
程式碼如下:
#include <stdio.h>
void printbin(unsigned int n);
int main()
{
unsigned int num;
while(scanf("%lu",&num)== 1)
{
printf("binary->");
printbin(num);
putchar('\n');
}
return 0;
}
void printbin(unsigned int n)
{
int digit;
digit= n%2;
if(n>=2)
printbin(n/2);
putchar('0'+digit);
return ;
}
本人用簡單遞迴所寫的
問題來了,如果我將倒數第二行(也就是putchar('0'+digit))
改為putchar((char)digit)
此時執行會出現亂碼
可否告知小弟原因為何嗎???
謝謝!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.177.40.244
推
04/20 20:19, , 1F
04/20 20:19, 1F
→
04/20 20:19, , 2F
04/20 20:19, 2F
推
04/20 20:27, , 3F
04/20 20:27, 3F
→
04/20 21:18, , 4F
04/20 21:18, 4F