Consider the following code:
Char C;
C = getchar ();
IF (c == EOF)
// ...
On the machine that does not perform a symbol extension, C is always a positive number because it is a char type and EOF is negative,
The test conditions of the face will always fail. In order to avoid this, INT must be used without CHAR to save the variables of the GetChar return value.