getws ou fgetws Sous-routine
Objectif
Obtient une chaîne d'un flux.
Bibliothèque
Bibliothèque d'E-S standard (libc.a)
Syntaxe
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. |