Pourquoi si je change la taille de l'une des dimensions d'un tableau, j'obtiens une erreur d'exécution: "Segmentation Fault?". Exemple:Le tableau C-multidimensionnel provoque une erreur de segmentation (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;
}
Si DIM est 8, il a généré aucune erreur d'exécution, mais juste si DIM est supérieur à 8, il provoque l'erreur d'exécution « Erreur de segmentation ». Pourquoi ???
mais je dois tableau 11 dimensions et C n'a pas nouvelle [] opérande – psihodelia
Vous voulez dire utiliser malloc() - ceci est une question de C, pas C++. – Ant
@Ant: désolé, corrigé. @Norma: pourquoi auriez-vous besoin de cela en premier lieu ?! Vous pouvez le simuler (j'ajouterai cela), ou utiliser un int ******* ... mais sérieusement, vous avez probablement un défaut de conception. – int3