Немного фона, я пишу программу, которая играет в игру «Ящики», она запускается в командной строке linux и написана на C. Там есть приглашение, ожидающее ввода пользователя а затем считывается с помощью fgets() и интерпретируется и т. д.Обнаружение EOF с помощью fgets(), где filesteam is stdin
Как часть спецификации задачи, я должен возвратить определенную ошибку, если достигню «Конец файла в ожидании ввода пользователя». Я понимаю, что fgets() возвращает нуль, когда она достигает EOF ... но у меня есть
fgets(input,max_buffer,stdin);
безотлагательным цикла, если пользователь выходит преждевременно говорить с CTRL + C или CTRL + D это значит, что input == NULL?
Могу ли я определить, когда пользователь делает это с помощью fgets?
Просто пытаясь остричь голову, заранее за помощь.
(OS: UNIX) (Компилятор: GCC - C90)
Ctl-C убивает программу, поэтому 'fgets' никогда не возвращается. Ctl-D вызывает конец состояния файла. 'man fgets' –