Форум программистов, компьютерный форум CyberForum.ru

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

Войти
Регистрация
Восстановить пароль
 
c-villain
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 9
#1

Как лучше читать из буфера void*? - C++

09.12.2010, 23:56. Просмотров 383. Ответов 5
Метки нет (Все метки)

hi
проблема в следующем, не знаю как сделать лучше:
есть буффер типа void*, нефикс размера... в него я принимаю сообщение... знаю длину всего сообщения...
сообщение разбито на блоки по следующему формату: сначала идет размер блока (размер этого размера задан, пусть он будеи int-овый), далее инфа с блоком этого размера, далее опять размер блока, и опять блок с инфой, и, наконец, последний блок...
Вопрос, посоветуйте, как грамотнее извлекать все это? заранее спасибо)))
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2010, 23:56     Как лучше читать из буфера void*?
Посмотрите здесь:

Как лучше читать книги? - C++
Подскажите пожалуйста, каким образом лучше читать книги по Си++: мало книг, но долго и вдумчиво или расслаблено читать много книг без...

Что лучше читать книги по С++ в оригинале или переводе? - C++
Если говорить конкретнее, речь идет о серии C++ In-Depth. Я вот склоняюсь ко мнению, что оригинал лучше, т.к. иногда переводят как то по...

Что лучше читать Программирование: принципы и практика - Страуструпа или ООП в С++ - Лафоре - C++
Вот хочу научиться программировать, пошел я в библиотеку и взял две книги по программированию на С++(кроме них не фига не было по С++) ...

delete или new (typeid(void*))(void*) - C++
Доброе время суток. Пишу список. Телом каждого элемента (el) списка является void указатель(body). (предполагается что тело элемента...

Как строится ветвление, как читать данные, введённые с клавиатуры, как их потом применять - C++
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? Мне 11 лет, и я учусь программировать на С++. Расскажите мне о...

Как из С++ передать данные в текстовый файл? и как читать текстовые файлы в С++? - C++
Задача такая: у меня есть текстовый файл, в котором из матлаба передано некоторое число N. как теперь это число прочитать? потом...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
09.12.2010, 23:59     Как лучше читать из буфера void*? #2
А куда вы хотите записать "инфу с блоком этого размера"?
c-villain
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 9
10.12.2010, 00:01  [ТС]     Как лучше читать из буфера void*? #3
куда записать - не принципиально... куда угодно... можно наверн в динамический буфер...
просто, думаю, может какой-то красивый метод есть...
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
10.12.2010, 00:29     Как лучше читать из буфера void*? #4
Ну вообще, оно и так в динамическом буфере, на который указывает полученный void*.
C++
1
2
3
4
5
6
7
8
9
10
11
void* result;
long int total_length;
 
// тут надо хитро убедиться, что размер типа указателя
// соответствует размеру "размера блока инфы".
// для примера беру int.
int* block_len = static_cast<int*>(result);
// указатель на первый символ "инфы"
char* data = static_cast<char*>(static_cast<void*>(block_len + 1);
// указатель на следующий размер блока
int* next_length = static_cast<int*>(static_cast<void*>(b+*length));
c-villain
0 / 0 / 0
Регистрация: 03.12.2010
Сообщений: 9
10.12.2010, 00:31  [ТС]     Как лучше читать из буфера void*? #5
отлично, спасибо...))) так и начал делать...
что такое static_cast?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.12.2010, 00:40     Как лучше читать из буфера void*?
Еще ссылки по теме:

Как читать с файла каждую строку как структуру - C++
вопрос 1) как рассмотреть файл как последовательность битов.. вопрос 2) как читать с фаила каждую строку как структуру, например struct...

Как читать программу на С++? - C++
Приветствую вас, дорогие форумчане! У меня вот такой вопрос: Как легко читать программу? т.е. как перевести из исходного кода в русский...

Как читать из файла - C++
Pomogite pojalujsta! Ia ne znaiu kak chitat iz faila. Naprimer kak chitat chto nmapisanno v word faile i uvidet etot rezultat kak parametr.

Как читать строки - C++
Как считать строку с пробелами в с++.Нашел способ с getline , но там фишка в чем придется все вводить через гетлайн.А как вводить одно...


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

Или воспользуйтесь поиском по форуму:
lemegeton
2923 / 1352 / 135
Регистрация: 29.11.2010
Сообщений: 2,725
10.12.2010, 00:40     Как лучше читать из буфера void*? #6
Новое статическое типизирование.
Yandex
Объявления
10.12.2010, 00:40     Как лучше читать из буфера void*?
Ответ Создать тему
Опции темы

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