Ich mache ein Projekt und ich muss Daten vom Terminal lesen.Eine Eingabe vom Terminal lesen
So wird das Programm normal gestartet und der Benutzer muss einige Anweisungen geben. Ich möchte, dass das Programm auf die Anweisungen des Benutzers wartet (im Terminal abgreift) und dann alle ausführt.
Ich kann nur die Funktion read
verwenden, um den Eingang zu erhalten. Bisher fand ich die Art und Weise unten
int main (void)
{
char line[50];
int ret;
printf ("\nEnter string below\n");
while ((ret = read(0, line, 50)) != -1)
{
line[ret] = '\0';
printf ("result %s\n", line);
}
}
Es funktioniert, aber ich möchte alle Anweisungen geben und dann, wenn sie Drücken von ENTER den Eingabemodus beenden und behandeln.
Ist es möglich? Auch gibt es einen gemeinsamen Weg, um die imput Modus STRG + D
Dank
'imput'? : D gut. –
Sie verwenden nicht die "read" -Funktion, Sie verwenden die "getline" -Funktion. Überprüfen Sie dies mit Ihrem Lehrer oder was auch immer. –
Ja, es ist möglich. Es ist unklar, wie Sie die Eingabeinformationen verwalten möchten oder was sie darstellen. Wenn Sie sie jedoch als einzelne Zeichenfolgen verwalten möchten, können Sie ein Array von Zeichenfolgen verwenden (oder ein Array von Zeichenzeigern, die auf dynamisch zugewiesene Zeichenfolgenpuffer verweisen). . – lurker