Provided by: manpages-dev_2.77-1_all bug

NAME

       fwide - set and determine the orientation of a FILE stream

SYNOPSIS

       #include <wchar.h>

       int fwide(FILE *stream, int mode);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       fwide(): _XOPEN_SOURCE >= 500 || _ISOC99_SOURCE; or cc -std=c99

DESCRIPTION

       When  mode  is  zero,  the  fwide()  function  determines  the  current
       orientation of stream.  It returns a value  >  0  if  stream  is  wide-
       character  oriented,  that  is,  if wide-character I/O is permitted but
       char I/O is disallowed.  It returns a value  <  0  if  stream  is  byte
       oriented,  i.e.  if  char  I/O  is  permitted but wide-character I/O is
       disallowed.  It returns zero if stream has no orientation yet; in  this
       case  the  next  I/O  operation  might  change the orientation (to byte
       oriented if it is a char I/O operation, or to  wide-character  oriented
       if it is a wide-character I/O operation).

       Once  a  stream  has  an orientation, it cannot be changed and persists
       until the stream is closed.

       When mode is nonzero,  the  fwide()  function  first  attempts  to  set
       stream’s  orientation  (to  wide-character  oriented if mode > 0, or to
       byte oriented if mode < 0).  It  then  returns  a  value  denoting  the
       current orientation, as above.

RETURN VALUE

       The  fwide()  function returns the stream’s orientation, after possibly
       changing it.  A return value >  0  means  wide-character  oriented.   A
       return  value  <  0  means byte oriented.  A return value of zero means
       undecided.

CONFORMING TO

       C99, POSIX.1-2001.

NOTES

       Wide-character output to  a  byte  oriented  stream  can  be  performed
       through the fprintf(3) function with the %lc and %ls directives.

       Char  oriented  output  to  a  wide-character  oriented  stream  can be
       performed  through  the  fwprintf(3)  function  with  the  %c  and   %s
       directives.

SEE ALSO

       fprintf(3), fwprintf(3)

COLOPHON

       This  page  is  part of release 2.77 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/.