Warum ist "while (! Feof (Datei))" immer falsch?

Ich habe in letzter Zeit in vielen Posts Leute gesehen, die versucht haben, solche Dateien zu lesen: #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 ) { perror(path);...