Octal integer constants, starting from 0, such as 0 123, some data say that octal has no negative number, but -0 12 is also an allowed hexadecimal number, starting from 0x, such as 0x35, -0x 12 is also exponential, belonging to real number constants, not to integer constants.
3.-0 12 is not, because in C/C++, binary, octal and hexadecimal numbers are all unsigned numbers. 8E2 is not a floating point number.
4.C doesn't seem to have this function, so you need to write one yourself, C++
You can use cin.good ()
To judge.