dudul51 a écrit :
et je veux remplir mon buffer avec le champ valeur de ma structure donc j?ai écris dans une boucle : buffer[i] = s.valeur[i] ; et la c?est une erreur de segmentation. Pourquoi sachant que printf("%s",buffer[i]) ça marche ?
|
attention a la condition de sortie de ta boucle :
Code :
- for (int i=0; i<16; ++i) buffer[i] = s.valeur[i] ;
|
est faux : en effet, buffer[15] par exemple n'est pas valide pour const char* buffer = "test";
tu peux donc utiliser strncpy (mieux que strcpy pour eviter egalement les dépassement du tableau unsigned char valeur[16]
(sinon je sais pas si c'est important mais je trouve ca plus propre de garder le mm typage : unsigned char ou char)
---------------
-( BlackGoddess )-