Share via


getc, getwc

Lesen eines Zeichens aus einem Stream.

int getc( 
   FILE *stream 
);
wint_t getwc( 
   FILE *stream 
);

Parameter

  • stream
    Eingabestream.

Rückgabewert

Gibt das Lesen von Zeichen zurück.Um ein Lesefehler oder eine Dateiende-Bedingung anzugeben, gibt getcEOFzurück, und getwc gibt WEOFzurück.Für getc, verwenden Sie ferror oder feof , nach einem Fehler oder für Dateiende zu überprüfen.Wenn streamNULList, rufen getc und getwc ungültige Parameter für ein, wie in Parametervalidierungbeschrieben.Wenn die Ausführung fortgesetzt werden kann, darf dieser Funktionen geben EOF (oder WEOF fürgetwc) und Menge errno zu EINVAL.

Weitere Informationen finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr Weitere Informationen über diese und andere Fehlercodes.

Hinweise

Jede Routine liest ein einzelnes Zeichen aus einer Datei an der aktuellen Position des Zeigers inkrementiert und der zugeordneten Datei (falls definiert), um zum nächsten Zeichen zu veranschaulichen.Die Datei wird mit streamzugeordnet.

Diese Funktionen der aufrufende Thread sperren und können daher threadsicher.Bei einer nicht sperrend - Version finden Sie unter _getc_nolock, _getwc_nolock.

Hinweise Routine-Besondere folgen.

Routine

Hinweise

getc

Identisch mit fgetcimplementiert, sondern als Funktion und als Makro.

getwc

Breitzeichen-Version von getc.Liest ein Mehrbytezeichen oder ein Breitzeichen, je nachdem ob stream im Textmodus oder im binären Modus geöffnet ist.

Zuweisung generischer Textroutinen

TCHAR.H-Routine

_UNICODE & _MBCS nicht definiert

_MBCS definieren

_UNICODE definiert

_gettc

getc

getc

getwc

Anforderungen

Routine

Erforderlicher Header

getc

<stdio.h>

getwc

<stdio.h> oder <wchar.h>

Um Kompatibilität zusätzlichen Informationen finden Sie unter Kompatibilität in der Einführung.

Beispiel

// crt_getc.c
// Use getc to read a line from a file.

#include <stdio.h>

int main()
{
    char buffer[81];
    int i, ch;
    FILE* fp;
    
    // Read a single line from the file "crt_getc.txt". 

    fopen_s(&fp, "crt_getc.txt", "r");
    if (!fp)
    {
       printf("Failed to open file crt_getc.txt.\n");
       exit(1);
    }

    for (i = 0; (i < 80) && ((ch = getc(fp)) != EOF)
                         && (ch != '\n'); i++)
    {
        buffer[i] = (char) ch;
    }
       
    // Terminate string with a null character 
    buffer[i] = '\0';
    printf( "Input was: %s\n", buffer);

    fclose(fp);
}

Eingabe: crt_getc.txt

Line one.
Line two.

5231d02a.collapse_all(de-de,VS.110).gifOutput

Input was: Line one.

.NET Framework-Entsprechung

Siehe auch

Referenz

Stream E/A

fgetc, fgetwc

_getch, _getwch

putc, putwc

ungetc, ungetwc