Программа перестает ожидать при использовании putchar/getchar - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Всем привет. Мне тут посоветовали getchar(); использовать для ожидания нажатия клавиши после вывода. Всё работает, как добавляешь putchar();, она перестаёт ждать (после вывода сразу закрывает):
#include <stdio.h>
#include <conio.h>
main() {
        char c;
        clrscr();
        c=getchar();
        putchar(c);
        getchar();
}
Эта программка должна считывать символ, выводить его же и ожидать нажатия клавиши. Но в моём варианте она не ждёт.

Решение задачи: «Программа перестает ожидать при использовании putchar/getchar»

textual
Листинг программы
main() {
    char c;
 
    c = getchar();   
    putchar(c);
    
    fflush(stdin);
    getchar();
}

Объяснение кода листинга программы

  1. В первой строке объявляется функция main()
  2. В функции main() объявляется переменная типа char c;
  3. В третьей строке происходит считывание значения из стандартного ввода (stdin) в переменную c с помощью функции getchar();
  4. В четвертой строке выводится значение переменной c с помощью функции putchar(c);
  5. В шестой строке с помощью функции fflush(stdin) очищается буфер ввода (stdin);
  6. В седьмой строке снова считывается значение из стандартного ввода (stdin) в переменную c с помощью функции getchar();
  7. Программа завершается.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.143 из 5
Похожие ответы