Name

fgetws — read a wide-character string from a FILE stream

Synopsis

#include <wchar.h>
wchar_t *fgetws( wchar_t *restrict ws,
  int n,
  FILE *restrict stream);
 

DESCRIPTION

The fgetws() function is the wide-character equivalent of the fgets(3) function. It reads a string of at most n−1 wide characters into the wide-character array pointed to by ws, and adds a terminating null wide character (L'\0'). It stops reading wide characters after it has encountered and stored a newline wide character. It also stops when end of stream is reached.

The programmer must ensure that there is room for at least n wide characters at ws.

For a nonlocking counterpart, see unlocked_stdio(3).

RETURN VALUE

The fgetws() function, if successful, returns ws. If end of stream was already reached or if an error occurred, it returns NULL.

ATTRIBUTES

For an explanation of the terms used in this section, see attributes(7).

Interface Attribute Value
fgetws() Thread safety MT-Safe

CONFORMING TO

POSIX.1-2001, POSIX.1-2008, C99.

NOTES

The behavior of fgetws() depends on the LC_CTYPE category of the current locale.

In the absence of additional information passed to the fopen(3) call, it is reasonable to expect that fgetws() will actually read a multibyte string from the stream and then convert it to a wide-character string.

This function is unreliable, because it does not permit to deal properly with null wide characters that may be present in the input.

SEE ALSO

fgetwc(3), unlocked_stdio(3)

COLOPHON

This page is part of release 5.11 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at https://www.kernel.org/doc/man−pages/.


  Copyright (c) Bruno Haible <haibleclisp.cons.org>

%%%LICENSE_START(GPLv2+_DOC_ONEPARA)
This is free documentation; you can redistribute it and/or
modify it under the terms of the GNU General Public License as
published by the Free Software Foundation; either version 2 of
the License, or (at your option) any later version.
%%%LICENSE_END

References consulted:
  GNU glibc-2 source code and manual
  Dinkumware C library reference http://www.dinkumware.com/
  OpenGroup's Single UNIX specification
    http://www.UNIX-systems.org/online.html
  ISO/IEC 9899:1999

Modified Tue Oct 16 23:18:40 BST 2001 by John Levon <mozcompsoc.man.ac.uk>