Namensräume
Varianten
Aktionen

std::fgetc, std::getc

Von cppreference.com
< cpp‎ | io‎ | c
 
 
 
C-Style I/O
Typen und Objekte
Funktionen
Datei-Zugriff
Direkte Ein-/Ausgabe
Unformatierte Ein-/Ausgabe
Formatierte Eingabe
(C++11)(C++11)(C++11)    
(C++11)(C++11)(C++11)    
 
Definiert in Header <cstdio>
int fgetc( std::FILE* stream );
int getc( std::FILE* stream );

Liest das nächste Zeichen aus dem gegebenen Eingabestrom.

Inhalt

[bearbeiten] Parameter

stream - zum Lesen des Zeichens aus

[bearbeiten] Rückgabewert

Das erfolgreich erhaltene Zeichen oder EOF im Fehlerfall.

Wenn der Fehler durch eine Bedingung am Dateiende verursacht wurde, wird zusätzlich der eof-Indikator (siehe std::feof()) für stream gesetzt. Wenn der Fehler durch einen anderen Fehler verursacht wurde, wird der error-Indikator (siehe std::ferror()) für stream gesetzt.

[bearbeiten] Beispiel

#include <cstdio>
#include <cstdlib>
 
int main()
{
    int is_ok = EXIT_FAILURE;
    FILE* fp = std::fopen("/tmp/test.txt", "w+");
    if (!fp)
    {
        std::perror("File opening failed");
        return is_ok;
    }
 
    int c; // Note: int, not char, required to handle EOF
    while ((c = std::fgetc(fp)) != EOF) // Standard C I/O file reading loop
        std::putchar(c);
 
    if (std::ferror(fp))
        std::puts("I/O error when reading");
    else if (std::feof(fp))
    {
        std::puts("End of file reached successfully");
        is_ok = EXIT_SUCCESS;
    }
 
    std::fclose(fp);
    return is_ok;
}

Ausgabe

End of file reached successfully

[bearbeiten] Siehe auch

(veraltet in C++11)(entfernt in C++14)
liest eine Zeichenkette von stdin
(function) [bearbeiten]
schreibt ein Zeichen in einen Dateistream
(function) [bearbeiten]
gibt ein Zeichen zurück in einen Dateistream
(function) [bearbeiten]
C-Dokumentation für fgetc, getc