我编写了一个程序,该程序在循环中要求用户输入,并且仅在进入退出状态时才终止。但是,我的程序似乎存在一个错误,因此我永远无法退出。是否存在Linux快捷方式,即使我在用户输入中也可以让我退出程序?我正在Windows 10笔记本电脑上的Oracle Virtualbox中运行Linux。
我认为原因可能是fgets。现在,使用fflush()打印“ test”,但是在此之后命令行期望再次输入。函数parser.c中指定了函数“ parse”,但这与该问题无关。
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#include "parser.c"
int main()
{
//Ausgabe des "$"
write(1, "$", 1);
//Auf Eingabe des Nutzers warten:
char *input=malloc(1024*sizeof(char));
fgets(input, 1023, stdin);
fflush(stdout);
printf("%s", "test", 5);
parse(input);
return 0;
}
非常感谢您的回答。