我正在阅读K&R的《C程序设计语言》,对于putchar和getchar感到困惑。我写了一个程序,可以输入10个字符,然后程序将它们打印回屏幕上。
#include <stdio.h>
int main()
{
int i;
int ch;
for(i = 0; i < 10; i++)
{
printf("Enter a single character >> ");
ch = getchar();
putchar(ch);
}
return 0;
}
我希望得到这样的输出结果:
Enter a single character >> a
a
Enter a single character >> b
b
我尝试了10次,但只输入了2个字符就得到了以下输出:
Enter a single character >> a
aEnter a single character >>
Enter a single character >> b
bEnter a single character >>
Enter a single character >>
我不确定为什么我的输入字符与固定字符串结合并输出。
此外,我也不太确定为什么要使用整数来存储字符。