Conversion unsigned char* (tableau) en char* (string)
	
	
		Salut à tous !
J'ai un peu honte de poster ce genre de problèmes, mais bon ca fait plusieurs fois que je planche la dessus en vain, donc bon :aie:
Le problème est donc le suivant :
Je récupère une chaîne de caractère sous la forme d'un unsigned char* grace à l'appel d'une fonction (externe, donc non, je ne peux pas passer en char*)
Quand j'affiche les caracteres de la chaine un par un, pas de soucis, ca s'affiche, mais quand je tente de les mettre dans mon char*, il rajoute des caractères speciaux à la fin :
	Code:
	
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 
 |  
// strSize = 24 (trouvé dynamiquement)
 
resultUC = (unsigned char *)calloc(strSize, sizeof(unsigned char));
 
GetResultUC(resultUC);
 
strResultString = (char*)malloc(strSize * sizeof(char));
for (t1 = 0; t1 < strSize; t1++)
{
    printf("uchar = %c\n", *(resultUC + t1));
    // => Affiche "M" puis "o" puis "n" etc. jusque "e"
    strResultString[t1] = (*(resultUC + t1));
}
 
m_ResultString = (char*)malloc(t1 * sizeof(char));
 
for(i=0 ; i<t1 ; i++)m_ResultString[i] = (int)NULL;
for(i=0 ; i<t1 ; i++)m_ResultString[i] =  strResultString[i];
 
(...)
 
printf("result = %s\n", mResultString);
// => Affiche "Mon_texte/)&à('$*¤!§" | 
 Merci de vos éventuelles réponses !