Следующий код выводит «Незаконный поиск»:
#include <stdio.h>
#include <errno.h>
#include <string.h>
int main() {
errno = 0;
getchar();
getchar();
getchar();
ftell( stdin );
printf( "%s\n", strerror(errno) );
}
Это происходит, когда я запускаю "cat script | ./a.out", а также когда я просто запускаю "./a.out". Проблема с Ftell, конечно. Мой вопрос: почему это происходит? Я думаю, что stdin можно искать. fseek также вызывает ту же ошибку. Если stdin не доступен для поиска, есть ли способ, которым я могу сделать то же самое?
Спасибо за ваши ответы.