【发布时间】:2021-05-24 16:51:32
【问题描述】:
这是我的代码
#include <stdio.h>
#include <stdlib.h>
int main(){
char c,d;
c=getchar();
d=getchar();
printf("%c %c",c,d);
return 0;}
在这里我要求输入 2 个输入,但在输入一个输入后它就停止了。我的意思是,如果我只写一个字符并按回车键,它只会显示那个字符。不询问任何进一步的意见。
但是当我同时给出两个输入然后按回车键时,它会同时显示。
【问题讨论】:
-
getchar 也将“输入”作为字符。您按下的每个键都将被 getchar 视为输入。在第一种情况下,它打印 'c' 和一个新行 '\n' 而在第二种情况下,它打印两个字符。
-
对于基于行的输入,我建议您始终使用
fgets。其他任何事情都令人困惑。但是,在使用该功能时,您可能需要remove the newline character。