Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Offlev
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 29
#1

Фиксированный размер буфера для приема сообщения на клиенте (UDP) - C++

18.11.2012, 17:18. Просмотров 677. Ответов 3
Метки нет (Все метки)

Программа условная (лабораторная работа с использованием библиотеки boost). Клиент вводит размерность матрицы m x n. Сервер заполняет эту матрицу значениями и умножает саму на себя, после чего результат отправляет клиенту... Проблема в том, что фиксированный размер буфера для приема сообщения меня не устраивает:

C++
1
2
3
4
5
boost::array<char, 128> recv_buf;   
        udp::endpoint sender_endpoint;  
            int len = socket.receive_from(
                boost::asio::buffer(recv_buf), sender_endpoint, 0, error);
            std::cout.write(recv_buf.data(), len);
Мне необходимо, чтобы размер буфера соответствовал размеру сообщения.
Как быть?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2012, 17:18
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Фиксированный размер буфера для приема сообщения на клиенте (UDP) (C++):

Передать размер буфера - C++
strcpy_s(Name, sizeof Name, newName); // либо же strcpy_s(Name, Name, newName); Собственно копирую строку, передавая при этом размер...

Как изменить размер окна, а не только буфера - C++
HANDLE out_handle = GetStdHandle(STD_OUTPUT_HANDLE); COORD crd = {18, 13}; SMALL_RECT src = {0, 0, crd.X-1, crd.Y-1}; ...

Количество выводимых строк в консоли (размер буфера экрана) - C++
Такая проблема - по умолчанию в Windows размер &quot;буфера экрана&quot; для консоли - 300 строк. Я вывожу гораздо больше (около 1200 строк)...

UDP чат. При отправке сообщения, размер которого больше принимаемого буфера, сервер падает - C#
Всем привет. Учу c# устал от книжек и решил написать простенький чат используя udp сокеты. Получилось так что столкнулся с дурацкой...

Написать программу для приема UDP пакетов - Objective-C
Всем доброго времени суток! Мне необходимо написать программу, которая принимала бы udp пакеты от устройства из локальной сети. В качестве...

Как задать фиксированный размер консоли для приложения? - C#
Объясните, почему пользуясь методом Console.SetWindowSize (Int32, Int32) - окно уменьшается, но фактически) То есть появляются &quot;прокрутки&quot;...

3
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,545
Завершенные тесты: 3
18.11.2012, 18:55 #2
Offlev, Посылать сначала размер? Или завести некий конечный символ и до тех пор пока он не пришел, увеличивать размер?
1
Offlev
0 / 0 / 0
Регистрация: 18.11.2012
Сообщений: 29
18.11.2012, 20:09  [ТС] #3
Как должен выглядеть второй вариант на практике?
0
igorrr37
1648 / 1276 / 133
Регистрация: 21.12.2010
Сообщений: 1,932
Записей в блоге: 7
18.11.2012, 22:02 #4
Offlev, первой датаграммой отсылаете размер сообщения второй датаграммы, выделяете буфер данного размера и принимаете вторую датаграмму
1
18.11.2012, 22:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2012, 22:02
Привет! Вот еще темы с ответами:

Как узнать количество байт, необходимых для буфера UDP - C#
Помогите пожалуйста новичку. Написал клиент передачи по UDP протоколу. Но когда запускаю вылетает ошибка что размер файла больше чем размер...

Создать форму для приема сообщения посетителя и выводить его сообщение на другой странице - PHP
Создать форму для приема сообщения посетителя и выводить его сообщение на другой страницe. Можно ли это реализовать без подключения PHP?

Создать форму для приема сообщения посетителя и выводить его сообщение на другой странице - PHP
Есть форма заполнения: &lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;meta charset=&quot;utf-8&quot;&gt; &lt;title&gt;Форма&lt;/title&gt; &lt;/head&gt; &lt;body&gt; ...

UDP ошибка приема дейтаграммы - C++ Qt
Здравствуйте, начинаю работать с UDP-протоколом и возникли вопросы. Задача - отправить пакет данных от ПК до устройства и получить ответ....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru