Это означает только то, что говорится
сравнение всегда верно из-за ограниченного диапазона типов данных.
Диапазон рассматриваемых типов данных (a
, то есть unsigned char
), от 0 до 255 (на самом деле UCHAR_MAX
);
Значение EOF
равно -1
Вы сравниваете a
(из 0до 255) с -1
(a != -1)
условие всегда будет истинным