Как я могу объявить указатель на массив из 3 на 3 и использовать этот указатель для его печати .... Компилятор сообщает об ошибке «[Ошибка ] индексируются значение не является ни массивом, ни указателя, ни вектор "Объявление указателя на массив 3 на 3 и использование указателя для его печати
#include <stdio.h>
int main(void)
{
int A[3][3][3]={0};
int *ptr=A;
int i,j,k;
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
for(k=0;k<3;k++)
{
printf("%d ",*ptr[i][j][k]);
}
puts("");
}
}
return 0;
}
Это не массив '3' от' 3', это массив 3x3x3, который обычно не полезен ни для чего. –
'int (* ptr) [3] [3] = A;' ... 'printf ("% d ", ptr [i] [j] [k]);' – BLUEPIXY
Не используйте многомерные массивы в C Используйте только 1D массивы, затем 'arr [i * width + j]' и т. Д. –