fwide

FWIDE(3)                   Linux Programmer's Manual                  FWIDE(3)

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 ||
           _POSIX_C_SOURCE >= 200112L;
           or cc -std=c99

DESCRIPTION
       When mode is zero, the fwide() function determines the current orienta-
       tion of stream.  It returns a positive value if stream is  wide-charac-
       ter  oriented, that is, if wide-character I/O is permitted but char I/O
       is disallowed.  It returns a negative value  if  stream  is  byte  ori-
       ented--that is, if char I/O is permitted but wide-character I/O is dis-
       allowed.  It returns zero if stream has no  orientation  yet;  in  this
       case  the next I/O operation might change the orientation (to byte ori-
       ented 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 is greater
       than 0, or to byte oriented if mode is less than 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 positive return value means wide-character oriented.  A
       negative  return  value  means  byte  oriented.  A return value of zero
       means undecided.

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

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 per-
       formed through the fwprintf(3) function with the %c and %s directives.

SEE ALSO
       fprintf(3), fwprintf(3)

COLOPHON
       This page is part of release 4.04 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
       http://www.kernel.org/doc/man-pages/.

GNU                               2015-08-08                          FWIDE(3)
Man Pages Copyright Respective Owners. Site Copyright (C) 1994 - 2021 Hurricane Electric. All Rights Reserved.