我最初使用过get并尝试编译并运行。它工作得很好。 然后我把它改成了fgets,因为编译器警告说我这样做了。 在查看其他帖子后我尝试了getchar()和fflush(),但它不起作用。 这是代码的一部分:
int main(void){
char line[1024]; /* the input line */
char *argv[64]; /* the command line argument */
while (1) { /* repeat until done .... */
printf("shell> "); /* display a prompt */
fgets(line,20,stdin); /* read in the command line */
parse(line, argv); /* parse the line */
if (strcmp(argv[0], "exit") == 0){ /* is it an "exit"? */
exit(0);
}
execute(argv); /* otherwise, execute the command */
}
}
谁能告诉我哪些部分我做错了?