同时循环比较字符串/字符与fgets

时间:2015-09-18 02:13:22

标签: c char fgets

我正在尝试在C中使用fgets获取用户输入,并且在使用while循环时遇到问题。

以下是我正在使用的代码:

char input[300];

fgets(input, 300, stdin);

while(strcmp("Quit", input) != 0) {

    fgets(input, 300, stdin);

}

当我输入Quit时,循环继续并且不会终止,我不明白为什么会这样。

1 个答案:

答案 0 :(得分:1)

fgets()也会将新的换行符存储在input中。手动删除它,或者像这样比较:

while(strcmp("Quit\n", input) != 0)