2016-12-07 4 views
1

Моя Visual Studio все еще ждет ввода даже после того, как я продолжаю вводить новую строку.Что считается EOF в stdin?

Например:

while ((c = fgetc(stdin)) != EOF) 
{ 
    // do something 
} 

Что я должен указать, что посылает EOF в Visual Studio?

ответ

4

Вы можете отправить EOF с CTRL +D (для Linux) или + Z (для Windows) систем CTRL.

Выработать, когда fgetc() ждет вход от пустойstdin, эта комбинация клавиш будет имитировать EOF. В случае, если stdin не пуст, вам нужно дважды использовать комбинацию клавиш (один раз, чтобы помочь сбросить stdin, а другой - отправить EOF).

+0

... который должен быть * первым * вводом (или первым после новой строки). –

+0

@WeatherVane Спасибо, обновлено соответствующим образом. :) –

+0

@WeatherVane На данный момент я понятия не имею, и у меня нет операционной системы Windows, обновит вас после того, как я попробую. –