conversion d'un long en héxadécimal [C/C++] - C++ - Programmation
Marsh Posté le 26-04-2002 à 11:32:47
Tu parle plutot de l'affichage
Marsh Posté le 26-04-2002 à 11:49:50
c pour écrire dans un fichier, mais on s'en fout, c juste pour convertir en héxa à partir d'un long!
Marsh Posté le 26-04-2002 à 12:02:48
écrire dans un fichier texte ?
Marsh Posté le 26-04-2002 à 12:11:15
c pour écrire dans un fichier .obj , un format 3D propriétaire
Marsh Posté le 26-04-2002 à 12:13:06
Et je vois pas pourquoi t'as besoin d'écrire en hexa alors... ça veut rien dire si c'est pour écrire en binaire et pas en mode texte...
Marsh Posté le 26-04-2002 à 12:51:07
Un nombre long peut se REPRESENTER en base 16 (hexadécimal) ou en base 10 (qui nous est plus naturel au super marché), ou dans toute autre base.
10000 LONG fait 00 00 27 10 en hexa (si la calculette Windows est crédible).
Dans fichier, on écrit les octets 00H puis 00H puis 27H puis 10H, ce qui, si on le lit en long donne 10000, ou octet par octet 0 puis 0 puis 39 (décimal) puis 16 (décimal). Si on le lit en short int, ça donnera 0 puis 10000 (décimal) (bien qu'ils soient dans l'ordre LSB/MSB).
Ecrire 10000 en long dans un fichier ou 10000 en short int puis 00 en short int, ou son équivalent octet par octet, c'est IDEM quant au résultat final.
Marsh Posté le 26-04-2002 à 12:54:01
ya pas une histoire de '0x' (zéro x) à mettre devant le nombre ?
Marsh Posté le 26-04-2002 à 12:57:15
C'est pour l'affichage ça
Si il a un nombre dans une variable et qu'il doit le stocker dans un fichier binaire, il l'écrit tel quel.
Marsh Posté le 26-04-2002 à 11:30:49
existe-t-il des fonctions ou librairies pour faire ce genre de conversion ?
---------------
JeanBeulz, chercheur coincheur