Greg hat geschrieben:Okay, das funktioniert jetzt. Aber:
Wie kommst du bei "if (!fgets(line, 127, stdin))" auf "stdin"?
Wozu braucht man "newline"?
weil offensichtlich der eingelesene string nicht von einem 0-byte ('\0')
begrenzt wird, sonder vom return-tasten-generierten zeichen '\n'
daher muĂź man das letzte zeichen '\n' durch '\0' ersetzen
wenn du nämlich printf("you entered: %s\n", line); aufrufst, und line hat kein '\0' am ende, gibts einen absturz (vermutlich zugriffsverletzung, bestenfalls besteht die ausgabe aus line plus einem haufen mist...)
und wegen dem stdin wĂĽrde ich in der online-hilfe deiner IDE nachsehen...
die sagt folgendes:
char *fgets(char *string, int n, FILE *stream);
stdin bedeutet also, daß du von der tastur lesen willst (könnte auch eine datei sein, oder sonstwas...)
ich empfehle dir aber wirklich, zuerst dein wissen etwas zu vertiefen, bevor du zu programmieren anfänsgt (buch !
) es mag zwar hier immer wieder nette leute geben, die dir weiterhelfen, aber du lernst auf die art halt nicht besonders schnell...
ulrich