Bonjour,
J'ai essayé de déclarer un tableau de cette façon :
à ma surprise la compilation n'a posée aucun problème avec gcc, fonctionne parfaitement et affiche :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 int main() { int n = 1000000; int i; char tab[n]; char str[] = "Taille du tableau: "; for(i=0;i<n;i++) { tab[i]=i%255; } printf("%s%d\n", str, sizeof(tab)); }
Taille du tableau: 1000000
Et pourtant sous GDB un sizeof(tab) donne 2 ...
S'agit t-il d'une particularité de gcc ou d'une nouvelle norme du C ?
Et comment expliquer cette valeur 2 renvoyée par GDB ?
Partager