C: Wie ein EOF simulieren?
-
12-09-2019 - |
Frage
Ich lese zur Zeit K & R Buch und Schreibarbeiten in den Beispielen aus dem ersten Abschnitt, und es gibt ein paar Beispiele wie folgt aus:
while((c = getchar()) != EOF) {
//do something
}
Ich teste diese Beispiele auf einer Windows-Box und damit die kompilierten exe-Dateien aus der cmd
prompt ausgeführt wird.
das obige Beispiel zu testen, wie simulieren ich eine EOF
? Das heißt, im Grunde, wie kann ich die Schleife stoppen, wenn das Beispiel von der Eingabeaufforderung testen?
Lösung
ein EOF einzugeben, verwenden:
- ^ Z ( Strg Z ) in Windows
- ^ D auf Unix-ähnlichen Systemen
Andere Tipps
Siehe EOF
Windows: Ctrl+Z
Unix :Ctrl+D
Als erster drücken: Strg ^ X, neben: Strg ^ D
Sie können auch EOF simulieren, indem explizit int Variable, die einen Wert von -1 gibt.
Überprüfen Sie den Code aus für mehr Klarheit:
#include<stdio.h>
int main() {
// char ch=getchar()
// int ch=-1;
if(ch==EOF) { printf("\nEOF: %d",EOF); }
if((ch!=EOF)==0) { printf("\nit is equal to 0"); }
if((ch!=EOF)==1) { printf("\nit is equal to 1"); }
else { printf("\n it is equal to other value"); }
system("pause");
return 0;
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow