Консольный чат - нужен пример - C (СИ)
Формулировка задачи:
Подскажите пожалуйста, пишу консольный чат на си, у программы клиента 2 процесса один отвечает за получение сообщений, другой ждет ввод с экрана, чтобы отправить сообщение.
допустим я пишу сообщение и в это время мне приходит сообщение. как сделать чтобы оно выводилась отдельной строкой, а я свое продолжил писать в том же месте.
то есть например такая фигня происходит:
приfiller: здарова)
_
а надо сделать так:
filler: здарова)
при_
_ это курсор
заранее спасибо
Решение задачи: «Консольный чат - нужен пример»
textual
Листинг программы
- #include <stdio.h>
- #include <wchar.h>
- #include <locale.h>
- #include <windows.h>
- int main()
- {
- setlocale(LC_ALL, "");
- wchar_t str[20] = L"при";
- wchar_t message[20] = L"filler: здорова)";
- wprintf(str);
- fflush(stdout);
- Sleep(3000);
- putwchar(L'\r');
- fflush(stdout);
- wprintf(message);
- putwchar('\n');
- wprintf(str);
- fflush(stdout);
- Sleep(3000);
- return 0;
- }
Объяснение кода листинга программы
В этом коде выполняется консольный чат-бот на языке C. Вот список действий, которые он выполняет:
- Устанавливает локаль на русскую.
- Создает массив строк для хранения сообщений.
- Заполняет первый массив строкой
при
. - Заполняет второй массив строкой
filler: здорова)
. - Выводит первое сообщение.
- Очищает буфер вывода.
Спит
3 секунды.- Выводит символ новой строки.
- Выводит второе сообщение.
Спит
3 секунды.- Выводит первое сообщение.
- Очищает буфер вывода.
Спит
3 секунды.- Выводит символ новой строки.
- Выводит второе сообщение.
Спит
3 секунды.- Возвращает 0, завершая программу.
Переменные:
— str: содержит строку
при
— message: содержит строкуfiller: здорова)
— L: используется как константа для создания широких строк — fflush: используется для очистки буфера вывода — Sleep: используется для задержки выполнения программы на 3 секунды — putwchar: используется для вывода широких символов — wprintf: используется для вывода широких строк — wchar_t: используется для хранения широких символов — L'\r': используется для вывода символа новой строки — '\n': используется для вывода символа новой строки
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д