Стандартный буферный вывод (STDOUT)
По умолчанию STDOUT небуферизован? Если нет, то какой тип буферизации по умолчанию
Спасибо
2 ответа
Решение
Вы не дали язык, но предполагаете, что используете функции stdio C (fopen()
и т. д.) или язык, который использует их (и большинство из них, по причинам переносимости):
Это зависит от базовой библиотеки времени выполнения C.
Большинство библиотек будут пытаться определить, подключен ли STDOUT к терминалу, и избегать буферизации, если это так, и выполнять буферизацию блоков (например, моя система Linux буферизует по 8 Кбайт за раз), если нет.
Краткий ответ: по умолчанию STDOUT обычно не буферизован. Если это проблема для вас, есть fflush(stdout);
но это редко требуется