Как сохранить указатель на позицию в буфере char *, отправить функцию, получить значение? - PullRequest
1 голос
/ 16 ноября 2011

У меня есть буфер char *, в котором я храню любые значения, выполняющие приведение типов. Каждый раз, когда я сохраняю float, я добавляю 'len of var' к 'my_position' var.

Мне нужен способ доступа к данным из другой точки моего приложения. Хорошо, буфер + позиция дает мне указатель на память. Как я могу вернуть его? Как инт? Я думаю, что я должен вернуть указатель на символ *. (Pointer_char)

Хорошо, теперь у меня есть эта функция:

 create_float(char * pointer_char) { 
 float * xx = reinterpret_cast<float*> (pointer_char);
}

У меня сбой .... Любая помощь и предложение будут оценены ... Спасибо

1 Ответ

2 голосов
/ 16 ноября 2011

Не думаю, что я полностью понял ваш вопрос, но если вам просто нужна функция, которая читает и возвращает значение с плавающей точкой из буфера char *, вы можете пойти с этим:

float create_float(char* ptr)
{
   return *(reinterpret_cast<float*>(ptr));
}

Кроме того, трудно объяснить причину сбоя без некоторого контекста. Можете ли вы разместить код здесь?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...