Преобразовать одномерный байтовый массив в трехмерный байтовый массив - C#
Формулировка задачи:
При выполнении функции выпадает исключение: "Выдано исключение типа System.OutOfMemoryException" что не так?
//преобразование одномерного массива в трехмерный public byte[, ,] FromOneToThree(byte[] array) { byte[, ,] b = new byte[array.GetLength(0) / 3, array.GetLength(0) / 3, array.GetLength(0) / 3]; //на эту строку ругается var x = 0; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { for (int k = 0; k < 3; k++) { b[i,j,k] = array[x]; x++; } } } return b; }
Решение задачи: «Преобразовать одномерный байтовый массив в трехмерный байтовый массив»
textual
Листинг программы
byte[, ,] b = new byte[(int)Math.Pow(array.GetLength(0), 1 / 3f), (int)Math.Pow(array.GetLength(0), 1 / 3f), (int)Math.Pow(array.GetLength(0), 1 / 3f)];