fwide — set and determine the orientation of a FILE stream
#include <wchar.h>
int
            fwide( | 
            FILE * | stream, | 
| int | mode); | 
          
![]()  | 
            Note | |||
|---|---|---|---|---|
              
  | 
          
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.
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.
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.
This page is part of release 2.79 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> 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. 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  |