Accueil > Forum > > > > Convertir un entier decimal en hexadecimal de la forme 0x1B
Convertir un entier decimal en hexadecimal de la forme 0x1B
mercredi 20 juillet 2005 à 16:08:31 |
Convertir un entier decimal en hexadecimal de la forme 0x1B

slobberbone
|
Bonjour ! Voilà je developpe sous visual C++ et je voulais savoir s'il existait une fonction ou si qq1 en avait dejà créee une qui permet de faire un truc du genre : je lui envoi un entier décimal 10 et elle me renvoi un entier hexa de la forme 0x0A par exemple ... Merci d'avance Slobberbone
|
|
mercredi 20 juillet 2005 à 16:14:04 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

BruNews
|
itoa(nbr, buff, 16);
ciao... BruNews, MVP VC++
|
|
mercredi 20 juillet 2005 à 16:29:48 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

slobberbone
|
merci mais jai dejà essayer et ca ne fonctionne pas pour ce que je veux ....
Slobberbone
|
|
mercredi 20 juillet 2005 à 16:33:00 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

Alcantornet
|
Hello, Alors essai printf("0x%X",123); ou printf("0x%x",123); et si tu mettre dans une chaîne sprintf(buff,"0x%X",123); ou sprintf(buff,"0x%x",123);
|
|
jeudi 21 juillet 2005 à 02:03:03 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

aardman
|
Salut, Pour formatter la chaine comme il veut ca serait plutot "0x%02x".
|
|
jeudi 21 juillet 2005 à 09:40:16 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

slobberbone
|
Merci pour toute ces réponses, mais ce que je veux essayer de faire c qu'à partir dun nombre décimal obtenir un nombre hexadécimal de la forme 0x5A par exemple pour la valeur 90 !! mais je veux garder le format int du debut jusqu'à la fin ... pcq sprintf travaille avec des chaines de caractères ... et c pas ce que je souhaite vu qu'il faut que je renvoi la valeur sur le port série sous la forme 0x1B ... pcq g essayé avec atoi() pour reconvertir le resultat de sprintf() mais ca ne donne rien ... Merci beaucoup encore une fois ! Mais c pcq g peut -etre pas etais assez precis ...
Slobberbone
|
|
jeudi 21 juillet 2005 à 10:02:27 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

Alcantornet
|
Hello, Dans un format int, il n'est pas question d'hexadécimal, de décimale... c'est tout de façon du BINAIRE, tu peux pas avoir de l'hexa dans du int. C'est juste lors d'un affichage que tu peux choisir le formattage ou dans une chaîne de caractère mais pas dans un int. Je pense que t'a qu'à renvoier ton int tel quel. 
|
|
jeudi 21 juillet 2005 à 10:23:25 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

cosmobob
|
farpaitement, la valeur d'un nombre ne depend pas de la base dans laquelle il s'exprime !!! seul son aspect quand tu l'affiches en depend. il y a egalite entre 90 (base10) et 0x5A (base16). A l'écran ca n'est pas pareil parce que ce meme nombre est exprimé dans deux bases non identiques, mais sinon c'est le meme !! d'ailleurs tu peux vérifier que 0x5A + 90 = 180 ... (printf("val : %d\n", 0x5A+90) ) il y a une petite confusion dans ton esprit ... si sur ton port série tu envoies 0x5A ou 90, et que tu sniffes, dans les 2 cas il va t'afficher 0x5A (s'il taffiche les choses en hexa) en gros t'as rien a convertir !!! a+ 
|
|
jeudi 21 juillet 2005 à 10:42:33 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

slobberbone
|
vi mais le probleme (lol) c que je ve envoyer 0x2D et pas 45 !!! par exemple et crois moi qd je sniffe ca marche pas et si j'envois 45 sur mon port com grace à writefile() il va m'envoyer 0x09 et 0x00 !!!! ( 90 en caractere !!!) donc du coup g une autre fonction : writecomblock : //--------------------------------------------------------------------------- // BOOL NEAR WriteCommBlock( HANDLE f, LPSTR lpByte , DWORD dwBytesToWrite) // // Description: // Envoi un block sur le port COM // //--------------------------------------------------------------------------- BOOL NEAR WriteCommBlock( HANDLE f, LPSTR lpByte , DWORD dwBytesToWrite) { BOOL fWriteStat ; DWORD dwBytesWritten ; DWORD dwErrorFlags; DWORD dwError; DWORD dwLength; COMSTAT ComStat; char szBuff[150 ] ; OVERLAPPED osWrite ; LPSTR lpByteBis; DWORD dwBytesToWriteBis; if (f < 0) return ( FALSE ) ; dwError = ClearCommError( f, &dwErrorFlags, &ComStat ) ; if (!dwError) return(FALSE); if(ComStat.cbInQue) { memset( &osWrite, 0, sizeof( OVERLAPPED ) ) ; ClearCommError( f, &dwErrorFlags, &ComStat ) ; do { dwLength = min( (DWORD) sizeof(szBuff), ComStat.cbInQue ) ; ReadFile( f, szBuff, dwLength, &dwLength, &osWrite) ; ComStat.cbInQue -= dwLength; }while(ComStat.cbInQue>0); } memset( &osWrite, 0, sizeof( OVERLAPPED ) ) ; fWriteStat = WriteFile( f, lpByte, dwBytesToWrite, &dwBytesWritten, &osWrite ) ; if (!fWriteStat) { dwError=GetLastError(); if(dwError == ERROR_IO_PENDING) { //il faut que getoverlappedresult soit egale a 0 //avant de recommencer writefile while(!GetOverlappedResult( f,&osWrite, &dwBytesWritten, TRUE )) { if (dwBytesWritten && (dwBytesWritten < dwBytesToWrite)) WriteFile( f, lpByte+dwBytesWritten, dwBytesToWrite-dwBytesWritten, &dwBytesWritten, &osWrite ) ; dwError = GetLastError(); if(dwError == ERROR_IO_INCOMPLETE) // normal result if not finished continue; else { // an error occurred, try to recover ClearCommError( f, &dwErrorFlags, &ComStat ) ; break; } } memset( &osWrite, 0, sizeof( OVERLAPPED ) ) ; ClearCommError( f, &dwErrorFlags, &ComStat ) ; if ((dwBytesWritten>0) && (dwBytesWritten < dwBytesToWrite)) { // ici on doit emettre les octets qui manquent lpByteBis=lpByte+dwBytesWritten; dwBytesToWriteBis=dwBytesToWrite-dwBytesWritten; fWriteStat=WriteFile( f, lpByte+dwBytesWritten, dwBytesToWrite-dwBytesWritten, &dwBytesWritten, &osWrite ) ; if (!fWriteStat) { dwError=GetLastError(); if(dwError == ERROR_IO_PENDING) { while(!GetOverlappedResult( f,&osWrite, &dwBytesWritten, TRUE )); //traite 3eme bloc 1 bloc message 120 octets environ fWriteStat=WriteFile( f, lpByteBis+dwBytesWritten, dwBytesToWriteBis-dwBytesWritten, &dwBytesWritten, &osWrite ) ; dwError=GetLastError(); if(dwError == ERROR_IO_PENDING) while(!GetOverlappedResult( f,&osWrite, &dwBytesWritten, TRUE )); //FIN } } } } else { // some other error occurred ClearCommError( f, &dwErrorFlags, &ComStat ) ; return ( FALSE ); } } return ( TRUE ) ; } // end of WriteCommBlock() voilà et pour cette fonction j'envoi un entier 0x2D par exemple et g bien 0x2D qui est envoyer sur le port série ! donc c peut etre un peu confu ds mon esprit ( c mm sur lol! ) mais y a qd mm qqchose qui coince !!!! merci
Slobberbone
|
|
jeudi 21 juillet 2005 à 11:20:32 |
Re : Convertir un entier decimal en hexadecimal de la forme 0x1B

slobberbone
|
dsl ! tu avais raison cosmobob !!! enfait, avec writefile ca marche pas mais aves writeblock oui !! y a un moment des moments je suis vraiment space !! enfin ! Merci a tous et puis au moins vous avez ma fonction writeblock qui soit dit en passant permet d'envoyer tt ce qu'on veut sur le port série !!!! Slobberbone
|
|
Cette discussion est classée dans : convertir, entier, forme, decimal, hexadecimal
Répondre à ce message
Sujets en rapport avec ce message
Convertir un entier en String [ par maxinfos ]
Bonjour,je voudrais savoir s'il était possible d'obtenir un code me permettant de convertir un entier (int) en String, ce afin de pouvoir nommer un fi
Conversion hexadecimal -> decimal ( et contraire) en C [ par Arrakis ]
Bonjour,Je ne connais pas de fonction pour realiser cette conversion du decimal vers l'hexa, si vous avez une idéemerciArrakis
Convertir chaine de caractere -> decimal [ par LordBob ]
Salut a tous, en fait je voudrai juste savoir comment est-ce ke l'on pouver convertir une chaine de caractère (ex: salut) en decimal... Voila, m
CONVERTIR EN HEXADECIMAL [ par Matheus ]
Bonjour !!!Je voulais savoir s'il existait une fonction contenue dans une librairie du C++ pour convertir des nombres d'une base à une autre, comme du
Comment convertir de l'ascii représentant de l'hexa. en une valeur hexadecimal? [ par tomaok ]
Bonjour,je cherche à récupérer des données hexadecimal de 1 octet enregistrées dans un fichier texte suivant ce format : A57F6E3C... donc sans esp
String de la forme hexa ----> entier [ par siphilis ]
bonjour,voila, j'aimerais convertir un string de la forme : "0x2f9" en entier. comment puis je faire?merci
convertir chaque elements d'une AnsiString en entier [ par Taquilla1 ]
salutJ'essaye en vain de convertir chaque élements d'une AnsiString en entier, mais mon compilateur refuse de la convertir.Ma chaine est entrée manue
Convertir Binaire > decimal et pas l'inverse [ par hop ]
Bonjour,J'ai cherché dans le forum comment faire pour convertir un mot binaire en décimal (dans cet ordre et pas dans l'autre)et je n'ai pas trouvé do
convertir tableau d'entier en chaine de caractere [ par bosmal ]
bonjour, comment feriez vous pour transformer un tableau d'entier (int tab[8192]) en une chaine de caractere. ou autrement y a t il une fonction qui p
Conversion d'entier en base 2^32 vers base 10 [ par le_duche ]
Bonjour !Je chercher je cherche, mais je ne trouve pas d'idée.Dans le cadre de l'implémentation d'une classe de grands entiers, je souhaite pouvoir co
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko [FRAMEWORK 4] LES TASKS ET LE THREAD UI[FRAMEWORK 4] LES TASKS ET LE THREAD UI par fathi
Je viens de passer quelques temps au TechDay's et j'ai pu voir pas mal de session intéressante. Par contre une chose m'a un peu étonné lors de certaines de ces sessions qui abordaient les améliorations du framework .NET (donc le 4.5) : en gros, bea...
Cliquez pour lire la suite de l'article par fathi WORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBEWORKFLOW FOUNDATION 3 A UN PIED DANS LA TOMBE par JeremyJeanson
Depuis déjà un an, je conseille vivement les utilisateurs de Workflow Foundation 3 à migrer vers la version 4. L'information qui va suivre ne devrait donc pas trop prendre au dépourvu les personnes qui m'ont suivi. Je profite de ce poste, pour faire le re...
Cliquez pour lire la suite de l'article par JeremyJeanson TECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PCTECHDAYS PARIS 2012 : NOUVELLES TENDANCES DU POSTE DE TRAVAIL - BRING YOUR OWN PC par ROMELARD Fabrice
Speakers: Thierry Rapatout, Antoine Petit et Xavier Trebbia Cette session entre dans le cadre des RDV Décideurs des TechDays 2012, elle est liée à la consumérisation de l'IT et la mise en place du "DeskTop as a Service" dans de plus en ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
RE : CXIMAGERE : CXIMAGE par rt15
Cliquez pour lire la suite par rt15
Logiciels
Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|