Copier un BYTE* dans un CHAR*
Bonjour,
je suis en train de convertir des adresses IP stockées en CHAR* vers des BYTE*.
Néanmoins, j'aimerais pouvoir convertir ces BYTE* en CHAR* pour les afficher proprement à l'écran.
J'ai crée une méthode Sprintf dans une classe perso CStringFct (qui fonctionne très bien):
Code:
1 2 3 4 5 6 7 8 9 10
| /*static*/ LONG CStringFct::Sprintf (OUT CHAR *pc_dst, IN const CHAR *pc_format, ...)
{
va_list st_listarg = NULL;
LONG l_len = 0;
va_start(st_listarg, pc_format);
l_len = vsprintf(pc_dst, pc_format, st_listarg);
va_end(st_listarg);
return(l_len);
} |
que j'utilise ainsi :
Code:
1 2 3 4
| BYTE* pby_adresse // reçu en argument
CHAR *pc_retour = (CHAR*)"Empty";
CStringFct::Sprintf(pc_retour, "%u", pby_adresse[i_niveau]); |
mais à l'exécution, j'ai l'erreur suivante :
Exception de première chance à 0x00528ad7 dans Appli_Test.exe*: 0xC0000005: Violation d'accès lors de l'écriture à l'emplacement 0x0060d610.
Est-ce que quelqu'un sait comment je peux faire pour écrire mes BYTE dans un CHAR* ?
Merci d'avance pour votre aide.