Почему, если я изменяю размер одной из размерностей массива, я получаю ошибку во время выполнения: «Ошибка сегментации?». Пример:C-многомерный массив вызывает ошибку сегментации (GCC)
#include <stdio.h>
#define DIM 8
int main(int argc, char **argv)
{
int a[3][3][3][3][3][3][3][3][3][3][DIM],
b;
a[1][1][1][1][1][1][1][1][1][1][1] = 2;
b=a[1][1][1][1][1][1][1][1][1][1][1];
printf("%d \n",b);
return 0;
}
Если DIM 8 не генерируется не ошибка времени выполнения, но только если DIM больше, чем 8, он вызывает ошибки времени выполнения «Сегментация Fault». Зачем ???
, но мне нужно 11-мерный массив и C не имеет новый операнд [] – psihodelia
Вы имеете в виду использовать таНос() - это C вопрос, а не C++. – Ant
@Ant: извините, исправлено. @Norma: зачем вам это нужно в первую очередь ?! Вы можете имитировать это (я добавлю это) или использовать 'int *******' ... но, серьезно говоря, у вас, вероятно, есть недостаток дизайна. – int3