To keep things simple, I'm going to assume that the platform / implementation under discussion has the following characteristics:
C99 , .
, / :
wint_t , (7.24.1/2)WEOF , (7.24.1/3)wchar_t (7.17/2)
, "" C (short int) 0xffff (int) 0xffffffff - -1 ( , ). (6.3.1.1):
int , int; unsigned int. . .
, .
, , WEOF -1, -1. , , wchar_t ( 16- ), (wchar_t) 0xffff .
, (, , ), , , WEOF EOF ". , , , WEOF == INT_MAX. , , wchar_t.
WEOF, , , , , ( , , ), , EOF , , char.
, (?) , WEOF, - , , (, errno ).
: , 0xffff UCS-2 UTF-16 ( 16- , ).