Bonjour, je n'arrive pas à convertir un unsigned char en char *, j'ai beau utilisé static cast ou autre chose, ca foire.
merci ;)
Version imprimable
Bonjour, je n'arrive pas à convertir un unsigned char en char *, j'ai beau utilisé static cast ou autre chose, ca foire.
merci ;)
Que cherches-tu à faire ?
On ne convertit pas impunément un entier/caractère en pointeur...
Bonjour,
Difficile de t'aider sans code :(Citation:
Envoyé par FamiDoo
Les static cast c'est du C++.Citation:
Envoyé par FamiDoo
Attention à la terminologie...Citation:
Envoyé par FamiDoo
http://emmanuel-delahaye.developpez.....htm#char_star
Tu cherches probablement sprintf()
prévoir de l'espace pour la chaine de destination en incluant le 0 final...
j'ai essayé sprintf avec %c mais le résultat obtenu n'est pas top .
Je veux faire à peu près ca :
Citation:
char * bufee=new char[5];
strcpy(bufee,ucTypeCanal );
new ? le forum C++ est à côté...Citation:
Envoyé par FamiDoo
Jc
ucTypeCanal ?
Il est déclaré comment ?
unsigned char ;)
Ce que je ne comprends pas, c'est pourquoi tu veux mettre un unsigned char dans un char.
Si ta variable ucTypeCanal a une valeur supérieure à 127, tu obtiendras un nombre négatif à l'arrivée. Ce n'est peut-être pas ce que tu cherches...
Après, tu peux toujours écrire ceci :
Code:bufee[indice_qui_va_bien] = ucTypeCanal;
En tout cas je comprends pourquoi cela ne veut pas compiler pour
Avec "UCHAR ucTypeCanal" ;)Code:strcpy(bufee,ucTypeCanal );
Sinon comme Gamdwin... :aie:
Bonjour,
Je me demanderais plutôt pourquoi un tel code devrait compiler sans erreur.Citation:
Envoyé par Ti-R
strcpy attend un *char (ou *unsigned char, peu importe) aussi bien pour la source que la destination
et là tu lui passe un simple UCHAR (unsigned char, je suppose)Code:
1
2
3
4 char *strcpy( char *strDestination, const char *strSource );
j'avais bien évidemment tenté cela mais le résultat n'était pas satisfaisant !