DragonFly On-Line Manual Pages
FGETWS(3) DragonFly Library Functions Manual FGETWS(3)
NAME
fgetws, fgetws_l -- get a line of wide characters from a stream
LIBRARY
Standard C Library (libc, -lc)
SYNOPSIS
#include <stdio.h>
#include <wchar.h>
wchar_t *
fgetws(wchar_t * restrict ws, int n, FILE * restrict fp);
#include <xlocale.h>
wchar_t *
fgetws_l(wchar_t * restrict ws, int n, FILE * restrict fp,
locale_t locale);
DESCRIPTION
The fgetws() and fgetws_l() functions read at most one less than the
number of characters specified by n from the given fp and store them in
the wide character string ws. Reading stops when a newline character is
found, at end-of-file or error. The newline, if any, is retained. If
any characters are read and there is no error, a `\0' character is
appended to end the string.
The fgetws_l() function takes an explicit locale argument, whereas the
fgetws() function uses the current global or per-thread locale.
RETURN VALUES
Upon successful completion, fgetws() and fgetws_l() return ws. If end-
of-file occurs before any characters are read, fgetws() and fgetws_l()
return NULL and the buffer contents remain unchanged. If an error
occurs, fgetws() and fgetws_l() return NULL and the buffer contents are
indeterminate. The fgetws() and fgetws_l() functions do not distinguish
between end-of-file and error, and callers must use feof(3) and ferror(3)
to determine which occurred.
ERRORS
The fgetws() and fgetws_l() functions will fail if:
[EBADF] The given fp argument is not a readable stream.
[EILSEQ] The data obtained from the input stream does not form
a valid multibyte character.
The functions fgetws() and fgetws_l() may also fail and set errno for any
of the errors specified for the routines fflush(3), fstat(2), read(2), or
malloc(3).
SEE ALSO
feof(3), ferror(3), fgets(3), xlocale(3)
STANDARDS
The fgetws() function conforms to IEEE Std 1003.1-2001 (``POSIX.1'').
DragonFly 3.7 December 26, 2013 DragonFly 3.7