Feof -Funktion in c

Feof -Funktion in c
Lesen und Schreiben von Dateien ist zweifellos ein leistungsstarkes Tool, mit dem wir alle Informationen haben oder speichern und die Datenbanken für die spätere Extraktion und Verarbeitung erstellen können.

Diese Daten werden aus den Dateien einzeln in Loops extrahiert, die wiederholt werden, bis alle Informationen extrahiert werden und wir das Ende der Datei erreichen

In diesem Linux -Hinweis, Wir werden Ihnen zeigen, wie man benutzt feof () Um festzustellen, ob die Funktionen der GET -Daten EOF zurückgeben. Um diese Funktion reibungslos zu verwenden, erläutern wir ihre Syntax, die Eingangs- und Ausgabemargente und die Art der Daten, die von jedem von ihnen akzeptiert werden

Anschließend implementieren wir diese Funktion mit praktischen Beispielen mit Bildern und Codeausschnitten, die wir für Sie mit verschiedenen Dateien vorbereitet haben.

Feof () Funktionssyntax in der C -Sprache

int feof (Datei * f_ptr);

Feof () Funktionsbeschreibung in der C -Sprache

Der feof () Funktion untersucht die Adresse, auf die hingewiesen wird durch f_ptr in der Datei. Wenn es dort keine Daten gibt, wird festgelegt, dass es sich um EOF oder End-of-the-Datei handelt und „1“ zurückgibt. Ansonsten ist das Ergebnis "0". EOF ist kein Fluchtcharakter, sondern ein Ergebnis, das durch einige Funktionen zurückgegeben wird, die die Daten wie GetC () abrufen.

Der feof () Die Funktion ist sehr nützlich und ihr Ergebnis wird als Bedingung in Dateiabrufschleifen verwendet, um das Ende der Schleife zu bestimmen, wenn sie das Ende erreicht.

Der feof () ist eine der Funktionen in der C -Standardbibliothek. Bevor Sie diese und andere Eingangs- und Ausgangsfunktionen verwenden können, müssen Sie das „stdio.H ”Kopfball zum“.c ”Datei:

#enthalten

So extrahieren Sie die Daten aus einer Datei und verwenden Sie die Funktion feof (), um die Ausgabe der Extraktionsschleife zu bestimmen

In diesem Beispiel erläutern wir den Schritt-für-Schritt-Vorgang zum Erstellen einer Schleife zum Extrahieren der Daten aus einer Textdatei und verwenden die feof () Funktion zur Bestimmung der Ausgabe, wenn die letzten Daten extrahiert werden.

Der erste Schritt besteht darin, die zu definieren f_ptr Zeiger auf die Datei, die wir extrahieren möchten. Dieser Zeiger ist das Eingabeargument für feof () und getc (). Wir definieren auch die Daten C_ von char type, der die Ausgabe der GetC () -Funktion in der Extraktionsschleife ist.

#enthalten
#enthalten
hauptsächlich()

Datei *f_ptr;
char c_;

Der zweite Schritt besteht darin, eine Textdatei zu erstellen oder zu verwenden, die wir öffnen, um die Daten daraus zu extrahieren.

Um die Datei zu öffnen, rufen wir die Funktion fopen () auf und übergeben den Namen und Pfad als Eingabeberechtigung, bei denen wir die Datei speichern und das Attribut „R“ lesen, das durch Kommas getrennt ist. Hier benutzen wir die „Dokumente/Linux_Hint Beispiel .txt" Datei.

Als Ausgangsargument für fopen () senden wir das f_ptr Zeiger, den wir früher definiert haben:

f_ptr = fopen ("dokuments/linux_hint Beispiel.txt "," r ");

Sobald die Datei geöffnet ist, f_ptr zeigt auf Ihre ersten Daten. Dieser Zeiger ist das Eingabeargument für FeoF () und fGetc () im nächsten Schritt, der die Abrufschleife ist.

Wenn die Größe der Datei nicht bekannt ist, ist die praktischste Abrufschleife eine Weile -Schleife, in der die Ausgangsbedingung das Ende der Datei ist, das Ergebnis von von feof ().

Lassen Sie uns als nächstes die Extraktionsschleife betrachten. Feof () wird in jedem Zyklus aufgerufen, in dem GetC () ein Zeichen aus der Datei abruft und sie mit printf () in die Befehlszeile ausdruiert. Wenn das Ergebnis, das mit negiert wird “!"Ist gleich" 0 ", die Schleife wird ausgelöst.

während ( ! feof (f_ptr)

printf ("%c", c_);
c_ = getc (f_ptr);

Mit dieser Schleife können wir jetzt alle Daten bis zum Ende der Datei extrahieren und drucken f_ptr.

In der folgenden Abbildung sehen wir den vollständigen Code mit der Definition der Variablen und Zeiger, der Öffnung der Datei, der Extraktion und Ausgabe der Daten und der anschließenden Schließung der Datei:

#enthalten
#enthalten
hauptsächlich()

Datei *f_ptr;
char c_;
f_ptr = fopen ("dokuments/linux_hint Beispiel.txt "," r ");
c_ = getc (f_ptr);
während ( ! feof (f_ptr))

printf ("%c", c_);
c_ = getc (f_ptr);

fcLose (f_ptr);

Im folgenden Bild sehen wir die Textdatei, die wir für dieses Beispiel verwenden, und die Extraktion ihrer Daten, die in der Befehlskonsole gedruckt sind:

Wir können auch einen Zähler hinzufügen, um die Anzahl der extrahierten Zeichen zu erhalten. Dazu müssen wir die C_count -Ganzzahl definieren, die jedes Mal inkrementiert wird, wenn die Extraktionsschleife ausgeführt wird und sie am Ende anzeigen.

#enthalten
#enthalten
hauptsächlich()

Datei *f_ptr;
char c_;
intc_count = 0;
f_ptr = fopen ("dokuments/linux_hint Beispiel.txt "," r ");
c_ = getc (f_ptr);
während ( ! feof (f_ptr))

printf ("%c", c_);
c_ = getc (f_ptr);
c_count ++;

printf ("\ nextracted Zeichen: %li \ n", c_);
fcLose (f_ptr);

In der folgenden Abbildung sehen Sie das Ergebnis der Extraktion, gefolgt von der Anzahl der extrahierten Zeichen:

Abschluss

In diesem Linux -Hinweis Artikel, wir haben erklärt, wie man benutzt feof () um das Ende einer Datei zu bestimmen.

Wir haben auch die praktische Verwendung dieser Funktion demonstriert, indem wir eine einfache Konsolenanwendung erstellen, die die Daten aus einer Textdatei extrahiert und verwendet feof () um das Ende der Datei zu bestimmen und die Extraktionsschleife zu beenden. Wir haben Ihnen auch gezeigt, wie Sie die verschiedenen zusätzlichen und komplementären Funktionen verwenden, um die Dateien in der C -Sprache zu öffnen, zu schließen und zu bearbeiten. Wir hoffen, dass dieser Artikel für Sie nützlich ist. Für relevantere Artikel durch die Suchmaschine von Linux Hint von Linux Hint brose.