Info2P5/numausg.c
2025-06-12 08:10:22 +02:00

34 lines
1.1 KiB
C

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
// Prüfen, ob ein Dateiname als Argument übergeben wurde
if (argc < 2) {
printf("Bitte Dateinamen als erstes Argument angeben.\n");
return 1; // Fehlercode zurückgeben und Programm beenden
}
// Datei im Lesemodus ("r") öffnen
FILE *datei = fopen(argv[1], "r");
if (datei == NULL) {
// Fehler beim Öffnen der Datei, z.B. Datei existiert nicht
perror("Fehler beim Öffnen der Datei");
return 1; // Fehlercode zurückgeben und Programm beenden
}
char zeile[1024]; // Puffer für eine Zeile (max. 1023 Zeichen + '\0')
int zeilennummer = 1; // Startwert für die Zeilennummerierung
// Solange noch Zeilen gelesen werden können
while (fgets(zeile, sizeof(zeile), datei) != NULL) {
// Zeilennummer und Inhalt der Zeile ausgeben
// %4d: Zeilennummer rechtsbündig mit mindestens 4 Stellen
printf("%4d: %s", zeilennummer, zeile);
zeilennummer++; // Zeilennummer erhöhen
}
// Datei schließen
fclose(datei);
return 0; // Erfolgreiches Programmende
}