Lorsqu'on initialise un tableau ou une structure tous les éléments restants non initialisés sont remplis par des 0. Par exemple si tu fais :
int t[10] = {0, 10, 20, 30, 40};
t[5], t[6], t[7], t[8] et t[9] seront initialisés à 0.
Sur x86 les variables locales sont placées sur la pile (donc dernier arrivé, premier sorti). Par exemple si on a :
int a, b, c, d, e, * p = &e;
Alors :
p[0] = e
p[1] = d
p[2] = c
p[3] = b
p[4] = a
Et comme dit plus haut, si tu initialises un tableau, tous les éléments restants non initialisés seront initialisés à 0 ... Tout peut arriver (selon le compilateur, le système, etc.). Moi en tout cas (Code::Blocks, Windows XP) j'ai pas ce "phénomène".
Partager