This question is about a member function basic_istream:
int_type get();
as described in N3337 27.7.2.3 # 4 (this is [istream.unformatted]). The actual standard text is supposedly the same.
The text says:
After creating a watchdog object, extracts a symbol c, if available
Returns: cif available, otherwisetraits::eof()
This text assumes that a negative charshould return a negative value. We can compare with the following section basic_istream<charT,traits>& get(char_type &c), which says:
After creating the watchdog object, extracts the symbol, if available, and assigns it c.
It is very similar to get().
, get(), ; .. basic_istream::get() C getchar(). ( EOF), . C99 getchar() , , unsigned char. basic_istream::get() .
: get() 0...UCHAR_MAX union EOF? char, int_type ( )? - ? ?
"- ", int i = cin.get() char, char ch; cin.get(ch); ?