Mengapa "while (! Feof (file))" selalu salah?

Saya telah melihat orang yang mencoba membaca file seperti ini di banyak posting belakangan ini: #include <stdio.h> #include <stdlib.h> int main(int argc, char **argv) { char *path = "stdin"; FILE *fp = argc > 1 ? fopen(path=argv[1], "r") : stdin; if( fp == NULL ) {...