Я создаю сервер/клиент. Clent отправляет сообщение на сервер, который хранит его в файле. Чем клиент может прочитать это сообщение. Итак, я использую только следующие функции (плюс привязка и т. Д.): Fgets, read (оба для чтения из сокета и файла) write (для записи на файлы/сокет). И printf для печати.Printf prints old buffer - C
Странно, что когда я вызываю printf, бывает, что он печатает старый текст. Так, например, если я решил удалить все сообщение, я получу с сервера строку типа «файл удален». Затем в следующем действии, когда есть printf, случается, что он печатает содержимое desider плюс часть предыдущего pessage, например «file dele». Как это возможно? Что я должен проверить в своем коде? Я получаю все правильно, не используя такие вещи, как fflush (stdout) ;.
Это совершенно невозможно ответить с кодом, на который нужно смотреть. – aruisdante
Это может быть простая буферизация, и в этом случае 'fflush (stdout);' будет делать трюк. Убедитесь, что ваши строки заканчиваются символом '\ n'. – Wolph
Покажите нам некоторый код, часть, которая извлекает данные для печати. В противном случае мы ничего не знаем. –