我正在尝试在C中使用fgets
获取用户输入,并且在使用while循环时遇到问题。
以下是我正在使用的代码:
char input[300];
fgets(input, 300, stdin);
while(strcmp("Quit", input) != 0) {
fgets(input, 300, stdin);
}
当我输入Quit
时,循环继续并且不会终止,我不明白为什么会这样。
答案 0 :(得分:1)
fgets()
也会将新的换行符存储在input
中。手动删除它,或者像这样比较:
while(strcmp("Quit\n", input) != 0)