这是我写的代码。
#include<stdio.h>
#include<string.h>
int main()
{
char wd[100];
do
{
printf(">");
fgets(wd,100,stdin);
}while(strcmp(wd,"exit")!=0);
}
当我运行它时,它会反复向我读取单词,即使我退出“退出”也不会终止。请帮忙。感谢。
答案 0 :(得分:0)
fgets
会存储换行符'\n'
(如果存在),因此请在比较之前将其删除。
#include<stdio.h>
#include<string.h>
void chomp(char *str)
{
char *lf = strchr(str, '\n');
if (lf != NULL) *lf = '\0';
}
int main(void)
{
char wd[100];
do
{
printf(">");
fgets(wd,100,stdin);
chomp(wd);
}while(strcmp(wd,"exit")!=0);
return 0;
}