Я пытаюсь сделать этот вопрос на основе заявления fflu sh, но я не понимаю, как это сделать. Может ли кто-нибудь помочь мне в этом вопросе? По сути, мне нужен этот оператор fflu sh для распечатки текста из txt-файла следующего выражения:
Операционная система - это уровень сложного программного обеспечения, который управляет аппаратными ресурсами и предоставляет общий интерфейс для пользовательских программ. Популярные настольные операционные системы включают в себя: - Windows - macOS - Linux
Это распечатывается с использованием Linux Terminal. Но для того, чтобы сделать это, мне нужно, чтобы этот оператор fflu sh работал, чтобы я мог распечатать, но задержал вывод каждого слова из абзаца. Это вопрос или то, что известно как шаги по выполнению этого:
Вопрос, который предполагается сделать, приведен ниже: 1. Добавьте дополнительный оператор #include вверху исходного файла для библиотеки unistd.h, который обеспечивает доступ к функциям операционной системы.
Добавьте оператор if над вызовом putchar, который проверяет, является ли текущий символ пробелом (то есть между словами). Помните, что символы заключены в одинарные кавычки, а строки в двойные кавычки.
Внутри оператора if добавьте вызов функции fflu sh, которая обеспечит запись в выходной буфер немедленно.
if (...) {
fflush(stdout);
}
Используйте функцию usleep для добавления паузы в 0,2 секунды между печатными словами.
Здесь приведен код того, что я уже сделал с этим вопросом:
#include <stdio.h>
#include <unistd.h>
int main (int argc, const char *argv[])
{
int nextChar;
char read;
read = getchar();
//inserting I think flush statement here
if(...) { // am not sure on this line how to do this fflush statement question
fflush(stdout);
}
// flush statements ends here
putchar (read);
while (nextChar != EOF){
putchar(nextChar);
nextChar = getchar();
}
return 0;
}
Я искренне извиняюсь за длинный вопрос, но застрял пытаясь выяснить это всю неделю.