Bonjour,
je voudrais savoir si il était possible de caster un Uint en une chaine de caractère(char*).
Merci d'avance
Bonjour,
je voudrais savoir si il était possible de caster un Uint en une chaine de caractère(char*).
Merci d'avance
Bonjour,
Ta question n'a pas trop de sens là. Tu veux faire quoi ? Représenter un nombre en une chaine du style:
?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 int nombre=123; char chaine[]="123";
OuiEnvoyé par MeWaa
mais est-ce que c'est logique ?...( je suppose que `Uint` c'est un `unsigned int` ?)
En gros ça revient à donner une adresse en dur à un char*
je ne sais pas si c'est ce que tu veux faire, mais c'est très dangereux !
Une chaîne de caractère n'est pas un type de donnée à proprement parler en langage C. Même si les guillemets, en tant qu'opérateurs, peuvent être utilisés pour en représenter une, celle-ci est toujours stockée dans un tableau de caractères, auquel on accède en utilisant un pointeur.
Si tu veux obtenir une chaîne de caractères qui représente la valeur d'un Uint en décimal de façon humainement lisible, il faut passer par une fonction qui fasse le travail.
En l'occurence, c'est sprintf() qui remplira ce rôle. Cette fonction travaille de la même façon qu'un printf() ordinaire, mais en déposant son résultat dans un buffer au lieu de le renvoyer vers le flux standard.
Partager