-2
Ich versuche, das erste Zeichen jeder Zeile zu drucken, aber aus irgendeinem Grund gibt mein Code das zweite Element jeder Zeile aus?Falsches Zeichen aus Datei drucken?
Mein Code:
int main(int argc, const char * argv[]) {
FILE *file;
char c;
char array[150];
file = fopen("/Users/bqas/Desktop/m/m/dict", "r");
while((c=fgetc(file))!= EOF){
fgets(array, 150, file);
printf("%c",array[0]);
printf("\n");
}
return 0;
}
einige Textzeile;
a un, uno, una[Article]
aardvark cerdo hormiguero
aardvark oso hormiguero[Noun]
aardvarks cerdos hormigueros
aardvarks osos hormigueros
, die erwartet wird: 'while (! (C = fgetc (Datei)) = EOF) {' verbraucht 1 Zeichen am Anfang jeder Zeile ... –
Mögliche Duplikat von [ Lesen Sie eine Textdatei Zeile für Zeile und rufen Sie den Inhalt jeder Zeile in C] ab (http://stackoverflow.com/questions/23200822/read-a-text-file-line-by-line-and-retrieve-the- content-of-line-in-c) –
der gepostete Code enthält einige "magische" Zahlen. "magische" Zahlen sind Zahlen ohne Grundlage. I.E. 150. "magische" Zahlen machen den Code viel schwieriger zu verstehen, zu debuggen, zu pflegen. Schlagen Sie mit einer 'enum'-Anweisung oder einer' # define'-Anweisung vor, der "magischen" Zahl einen aussagekräftigen Namen zu geben, und verwenden Sie dann diesen aussagekräftigen Namen im gesamten Code. – user3629249