Вопрос

В настоящее время я читаю книгу K & R и набираю примеры из первого раздела, и там есть пара примеров, подобных этому:

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

Я тестирую эти примеры в окне Windows и, таким образом, запускаю скомпилированные exe-файлы из cmd подскажите.

Чтобы протестировать приведенный выше пример, как мне смоделировать EOF?То есть, в принципе, как я могу остановить цикл при тестировании примера из командной строки?

Это было полезно?

Решение

Чтобы ввести EOF, используйте:

  1. ^Z (CtrlZ) в Windows
  2. ^D в Unix-подобных системах

Другие советы

Ссылаться EOF

Windows: Ctrl+Z
Unix :Ctrl+D

Сначала нажмите:Ctrl^X, далее:Ctrl^D

Вы также можете имитировать EOF, явно присвоив переменной int значение -1.

Ознакомьтесь с этим кодом для большей ясности:

#include<stdio.h>

int main() {    
    // char ch=getchar()
    // int ch=-1;

    if(ch==EOF) { printf("\nEOF: %d",EOF); }
    if((ch!=EOF)==0) { printf("\nit is equal to 0"); }
    if((ch!=EOF)==1) { printf("\nit is equal to 1"); }
    else { printf("\n it is equal to other value"); }
    system("pause");
    return 0;
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top