
22.07.2007, 12:16
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
С нами:
10562786
Репутация:
537
|
|
Не удаёцо запись флоатов в динамич. массив байтов
Здрасти.
Подскажите, пожалуйста, ответ на следующий вопрос.
Создал я динамический массив байтов
char *start = new char[1024];
char *current_char = start;
потом передал его функции:
current_char = in(start);
Определение функции следующее:
char *in(char *cur)
Она принимает указатель на начало динамического массива байтов, вносит туда
несколько байт информации и возвращает указатель на текущую позицию в массиве.
Мне нужно занести в неё данные типа int и float.
С int всё получается, а с float нет. На экран выводится 0.00000
Вот что я вношу в массив чтобы хранить там int:
*cur++ = '0'; // тип данных. Для инт - 0, для флоат - 1
*cur++ = '2'; // сколько чисел
*cur++ = 12; // само число
*cur++ = 54;
Потом включается парсер и выводит текст:
Print 2 ints - 12 54.
А теперь мне нужно внести туда float:
*cur++ = '1';
*cur++ = '1';
*cur++ = 5,12;
на что я получаю
Print 1 floats: 0.000000
Мне подсказывали что нужно создать указатель типа float, натравить его на cur
и через него внести число, но я не совсем понимаю как это сделать.
|
|
|