ça m'a aussi semblé curieux, mais ça marche.
En fait le seul problème de compilation c'est la déclaration de "char* ch" qui est faite au mauvais endroit.
En fait je crois (à confirmer) que les chaines de caractères codées en dur (entre guillements) dans le code sont placée à la fin du binaire, et lors des commandes
Code:
1 2 3
| tab[0]="rouge";
tab[1]="vert";
tab[2]="bleu"; |
c'est les pointeurs vers ces chaînes qui sont utilisés, donc c'est correct.
Mais la je m'aventure un peu sur un terrain que je maitrise mal, donc je peux me tromper.
toujour est-il que le code marche (si on remet le "char* ch" à la bonne place) et que si on observe le .exe dans un editeur, on retrouve bien les chaînes "vert", "rouge", etc...