Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > трёхмерный динамический массив |
Автор: Andrey44 8.7.2007, 15:02 | ||
Всем добрый день. Подскажите пожалуйста правильно ли я создаю трёхмерный массив, а патом освобождаю память. |
Автор: archimed7592 8.7.2007, 15:06 |
Правильно. |
Автор: Andrey44 8.7.2007, 16:05 | ||||
Тогда подскажите как передать в функцию этот трёхмерный массив. Есть функция:
отрабатывает нормально и я получаю в массив данные. Но если динамический массив:
Программа слетает с ошибкой. ![]() |
Автор: archimed7592 8.7.2007, 16:12 | ||
Кхм... не вижу прототипа H5Dread... а мысли читать пока не научился... Но, по аналогии тебе нужен динамический трехмерный массив со статическими размерностями...
Добавлено через 1 минуту и 5 секунд Да, и чему у тебя равны d1, d2, d3? |
Автор: Andrey44 8.7.2007, 16:23 |
H5Dread это функция из библиотеки для работы с файлами формата HDF5 ![]() d1, d2, d3 - это я из файла получаю размерность массива так-что заранее я не знаю размеры массива. ![]() |
Автор: Andrey44 8.7.2007, 19:09 |
Ссылка на описание функции. http://hdf.ncsa.uiuc.edu/HDF5/doc/RM_H5D.html#Dataset-Read Там много интересного. ![]() |
Автор: archimed7592 8.7.2007, 19:31 | ||||
Ей нужен буфер. Выделять так:
Использовать этот массив можно потом так:
Или можно написать обёртку, которая будет себя вести подобно такому массиву. |
Автор: Andrey44 8.7.2007, 19:37 |
Спасибо сейчас попробую. ![]() Но почему всё работает с нединамическим трёхмерным массивом? |
Автор: bsa 8.7.2007, 19:40 | ||
Потому что организация памяти (структура массива) другая. |
Автор: Andrey44 8.7.2007, 19:55 |
Спасибо, archimed7592 вроде-бы всё работает. ![]() Получается, что трёхмерный динамический там и не нужен. ![]() |