Provided by: manpages-de-dev_4.21.0-2_all bug

BEZEICHNUNG

       scanf, fscanf, vscanf, vfscanf - Anpassung des Datei-Eingabeformats

BIBLIOTHEK

       Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT

       #include <stdio.h>

       int scanf(const char *restrict format, …);
       int fscanf(FILE *restrict datenstrom,
                  const char *restrict format, …);

       #include <stdarg.h>

       int vscanf(const char *restrict format, va_list ap);
       int vfscanf(FILE *restrict datenstrom,
                  const char *restrict format, va_list ap);

   Mit Glibc erforderliche Feature-Test-Makros (siehe feature_test_macros(7)):

       vscanf(), vfscanf():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

BESCHREIBUNG

       Die  Funktionenfamilie  scanf()  prüft  Eingaben  wie sscanf(3), liest aber aus einer DATEI. Die korrekte
       Verwendung dieser Funktionen ist sehr schwierig und es wird empfohlen, mit fgets(3) oder getline(3) ganze
       Zeilen zu lesen und sie später  mit  sscanf(3)  oder  noch  spezialisierteren  Funktionen  wie  strtol(3)
       auszuwerten.

       Die  Funktion  scanf()  liest  Eingaben  von  der  Standardeingabe  stdin,  fscanf liest Eingaben von dem
       Datenstrom-Zeiger datenstrom.

       Die Funktion vfscanf() verhält sich analog zu vfprintf(3) und liest Eingaben  von  dem  Datenstrom-Zeiger
       datenstrom,  wobei  eine  variable Argumentliste von Zeigern benutzt wird (siehe stdarg(3)). Die Funktion
       vscanf() ist zu vprintf(3) analog und liest aus der Standardeingabe.

RÜCKGABEWERT

       Bei Erfolg geben diese Funktionen die Anzahl der Eingabeelemente zurück, die erfolgreich  übereinstimmten
       und  zugewiesen wurden. Dies können weniger sein, als bereitgestellt wurden oder null, wenn ein »matching
       failure« auftrat.

       Der Wert EOF wird zurückgegeben, wenn das Ende der  Eingabe  erreicht  wird,  bevor  entweder  die  erste
       erfolgreiche  Umwandlung  oder  ein  »matching  failure«  auftrat.  EOF wird auch zurückgegeben, wenn ein
       Lesefehler auftritt. In diesem Fall wird die Fehleranzeige für den Datenstrom gesetzt  (siehe  ferror(3))
       und errno so gesetzt, dass es den Fehler angibt.

FEHLER

       EAGAIN Der  Dateideskriptor,  der  datenstrom zugrundeliegt, ist als nicht blockierend gekennzeichnet und
              die Leseaktion würde blockieren.

       EBADF  Der Dateideskriptor, der datenstrom zugrundeliegt, ist ungültig oder nicht zum Lesen geöffnet.

       EILSEQ Eingabebyte-Abfolge bildet kein gültiges Zeichen.

       EINTR  Die Leseaktion wurde durch ein Signal unterbrochen; siehe signal(7).

       EINVAL Nicht genug Argumente oder format ist NULL.

       ENOMEM Speicher aufgebraucht.

ATTRIBUTE

       Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
       ┌──────────────────────────────────────────────────────────────┬───────────────────────┬────────────────┐
       │ SchnittstelleAttributWert           │
       ├──────────────────────────────────────────────────────────────┼───────────────────────┼────────────────┤
       │ scanf(), fscanf(), vscanf(), vfscanf()                       │ Multithread-Fähigkeit │ MT-Safe locale │
       └──────────────────────────────────────────────────────────────┴───────────────────────┴────────────────┘

STANDARDS

       Die Funktionen folgen C99 und POSIX.1-2001.

SIEHE AUCH

       fgets(3), getline(3), sscanf(3)

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite  wurde  von  Patrick  Rother  <krd@gulu.net>,  Chris  Leick
       <c.leick@vollbio.de> und Helge Kreutzmann <debian@helgefjell.de> erstellt.

       Diese  Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
       bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte  eine  E-Mail  an  die
       Mailingliste der Übersetzer.

Linux man-pages 6.03                            29. Dezember 2022                                       scanf(3)