orientation(5)orientation(5)NAMEorientation - the orientation of a stream
The orientation of a stream is a property of a object that is handled
as a input/output stream. It is useful when the input/output model
assumes that characters are handled as wide-characters within an appli‐
cation and stored as multi-byte characters in files, and that all the
wide-character input/output functions begin executing with the stream
positioned at the boundary between two multi-byte characters.
After a stream is associated with a file, but before any operations are
performed on the stream, the stream is without orientation. If a wide-
character input or output function is applied to a stream without ori‐
entation, the stream becomes wide-oriented implicitly. Likewise, if a
byte input or output operation is applied to a stream without orienta‐
tion, the stream becomes byte-oriented implicitly. Only the function
can alter the orientation of a stream explicitly when the stream is
Just after a stream is associated with a pipe by the function, the
stream is byte-oriented.
After the stream becomes byte-oriented or wide-oriented, the orienta‐
tion of a stream will be fixed and can not be changed until the stream
The following functions are wide-character input/output functions.
The following functions are byte input/output functions.
To read characters from a stream when the orientation of the stream is
If byte input/output functions are applied to a wide-oriented stream or
wide-character input/output functions are applied to a byte-oriented
stream, the behavior is undefined.
The functionality of the orientation of a stream was developed by HP
and Mitsubishi Electric Corporation.
SEE ALSOfgetws(3C), fopen(3S), fread(3S), fwide(3C), fwprintf(3C), fwscanf(3C),
getc(3S), gets(3S), getwc(3C), popen(3S), printf(3S), putc(3S),
puts(3S), putwc(3C), putws(3C), scanf(3S), ungetc(3S), ungetwc(3C).