getws ou fgetws Sous-routine

Objectif

Obtient une chaîne d'un flux.

Bibliothèque

Bibliothèque d'E-S standard (libc.a)

Syntaxe

#include <stdio.h>
wchar_t *fgetws ( WString Number Stream)
wchar_t *WString;
int Number;
FILE *Stream;
wchar_t *getws (WString)
wchar_t *WString;

Descriptif

La sous-routine fgetws lit les caractères du flux d'entrée, les convertit en codes de caractères larges correspondants et les place dans le tableau désigné par le paramètre WString . La sous-routine se poursuit jusqu'à ce que le nombre de caractères spécifié par le paramètre Nombre moins 1 soit lu ou que le sous-programme rencontre un caractère de nouvelle ligne ou de fin de fichier. La sous-routine fgetws met fin à la chaîne de caractères large spécifiée par le paramètre WString avec un caractère large null.

La sous-routine getws lit les caractères larges du flux d'entrée désigné par le flux d'entrée standard (stdin) dans le tableau désigné par le paramètre WString . La sous-routine continue jusqu'à ce qu'elle rencontre une nouvelle ligne ou le caractère de fin de fichier, puis elle supprime tout caractère de nouvelle ligne et place un caractère de largeur NULL après le dernier caractère lu dans le tableau.

Paramètres

Article Descriptif
WString Pointe vers une chaîne pour recevoir des caractères.
Flux Pointe vers la structure FILE d'un fichier ouvert.
Nombre Indique le nombre maximal de caractères à lire.

Valeurs renvoyées

Si la sous-routine getws ou fgetws atteint la fin du fichier sans lire de caractères, elle ne transfère aucun caractère au paramètre String et renvoie un pointeur null. Si une erreur de lecture se produit, la sous-routine getws ou fgetws renvoie un pointeur null et définit la variable globale errno pour indiquer l'erreur.

Codes d'erreur

Si la sous-routine getws ou fgetws échoue car le flux n'est pas mis en mémoire tampon ou que des données doivent être lues dans la mémoire tampon du flux, elle renvoie un ou plusieurs des codes d'erreur suivants:

Article Descriptif
FEAGA Indique que l'indicateur O_NONBLOCK est défini pour le descripteur de fichier sous-jacent au paramètre Stream et que le processus est différé dans la sous-routine fgetws .
EBADF Indique que le descripteur de fichier spécifiant le paramètre Flux n'est pas un fichier d'accès en lecture.
EINTR Indique que l'opération de lecture est arrêtée en raison de la réception d'un signal et qu'aucune donnée n'a été transférée ou que l'implémentation ne signale pas de transfert partiel pour ce fichier.
EIO Indique que l'espace de stockage disponible est insuffisant.
ENOMEM Indique que l'espace de stockage disponible est insuffisant.
EILSEQ Indique que les données lues à partir du flot de données en entrée ne forment pas un caractère valide.