Dans un exemple de code, que je pensais parfaitement comprendre, je trouve une déclaration de variable comme cela :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
char *param[] = {
	"time", "20130423133428",
	"hp", "000000000",
	"hc", "000000000",
	"ptec", "0",
	"iinst", "00" };
Bon, je pensais bêtement "tableau de pointeurs sur des chaines avec une init".
Je check avec un simple truc genre :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
printf("%s", param[1]);
qui me donne bien mon "20130423133428".
Ok, mais si je fais un
Code : Sélectionner tout - Visualiser dans une fenêtre à part
strcpy(param[1], "12345678901234");
j'ai un plantage (je dois écrire dans une zone mémoire qui n'est pas celle de la variable). Bizarre non ?