Name

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

Synopsis

#include <wchar.h>
wchar_t *fgetws( wchar_t *ws,
  int n,
  FILE *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.

CONFORMING TO

C99, POSIX.1-2001.

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 3.52 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://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>