Я использую C для своей программы. Я использую Ubuntu 14.04. Ниже приведена одна из циклов, которые я использую.Как получить доступ к трехмерному массиву вне цикла
for (x=0; x<1024; x++)
{
for (i=0; i<8; i++)
{
for (j=0; j<8; j++)
{
arr[x][i][j]=vi[8*i+j+gi];
}
}
gi = gi+(8*8);
}
Здесь 'vi' представляет собой одномерный массив. Теперь массив «arr» имеет 1024 блока размером 8x8. Есть ли возможность доступа к блокам как таковым (размером 8х8) вне цикла для дальнейшей обработки?
Спасибо вам большое !!!. Я определил тип данных 3D-массива как «unsigned char». Я использовал следующий код для доступа к массиву 8x8: for (w = 0; w <1024; w ++) {printf ("% u", arr [w]); }. Но я получаю ошибку вроде: «format«% u »ожидает аргумент типа« unsigned int », но аргумент 2 имеет тип« unsigned char ». Как распечатать и просмотреть все блоки? – Flower
Определяется ли это как 'unsigned char x [1024] [8] [8]'? При печати и предварительном просмотре вы имеете в виду печать каждого из символов без знака? – fluter
Да, он определен как unsigned char x [1024] [8] [8]. Я просто хочу напечатать все 1024 блока как 8x8 блоков. – Flower