Freigeben über


fgets, fgetws

Rufen Sie eine Zeichenfolge aus einem Stream ab.

char *fgets( 
   char *str,
   int n,
   FILE *stream 
);
wchar_t *fgetws( 
   wchar_t *str,
   int n,
   FILE *stream 
);

Parameter

  • str
    Speicherort für Daten.

  • n
    Maximale Anzahl zu lesenden Zeichen.

  • stream
    Zeiger zur FILE-Struktur.

Rückgabewert

Jede dieser Funktion gibt str zurück. NULL zurückgegeben wird, um einen Fehler oder eine Dateiende-Bedingung anzugeben. Verwenden Sie feof oder ferror, um zu bestimmen, ob ein Fehler aufgetreten ist. Wenn str oder stream ein NULL-Zeiger ist oder n kleiner oder gleich null ist, Aufrufe dieser Funktion Parameterhandler der ungültige, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, wird errno auf EINVAL gesetzt, und die Funktion gibt NULL zurück.

Weitere Informationen zu diesen und anderen Fehlercodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.

Hinweise

Die fgets-Funktion liest eine Zeichenfolge vom Argument Eingabe stream und speichert sie in str. fgets liest Zeichen von der aktuellen Streamposition an und das erste Zeilenumbruchzeichen, am Ende des Streams oder bis die Anzahl der Zeichenlesens einzuschließen entspricht n - 1, das zuerst stammt. Das Ergebnis, das im str gespeichert wird, wird mit einem NULL-Zeichen angefügt. Das Zeilenumbruchzeichen, wenn gelesen wird, wird in der Zeichenfolge enthalten.

fgetws ist eine Breitzeichenversion von fgets.

fgetws liest die str als Breitzeichenargument Mehrbyte-Zeichenfolge oder Zeichenfolge mit Breitzeichen, ob stream im Textmodus oder im Binärdateimodus geöffnet ist, bzw. Weitere Informationen zur Anwendung von Text- und Binärmodi in Unicode- und Multibyte-Stream-E/A finden Sie unter Text- und Binärmodus-Datei-E/A und Unicode-Stream-E/A in Text- und Binärmodi.

Zuordnung generischer Textroutinen

TCHAR.H-Routine

_UNICODE & _MBCS nicht definiert

_MBCS definiert

_UNICODE definiert

_fgetts

fgets

fgets

fgetws

Anforderungen

Funktion

Erforderlicher Header

fgets

<stdio.h>

fgetws

<stdio.h> oder <wchar.h>

Zusätzliche Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.

Beispiel

// crt_fgets.c
// This program uses fgets to display
// a line from a file on the screen.
//

#include <stdio.h>

int main( void )
{
   FILE *stream;
   char line[100];

   if( fopen_s( &stream, "crt_fgets.txt", "r" ) == 0 )
   {
      if( fgets( line, 100, stream ) == NULL)
         printf( "fgets error\n" );
      else
         printf( "%s", line);
      fclose( stream );
   }
}

Eingabe: crt_fgets.txt

Line one.
Line two.

Ausgabe

Line one.

.NET Framework-Entsprechung

Siehe auch

Referenz

Stream-E/A

fputs, fputws

gets, _getws

puts, _putws