Accueil > Forum > > > > chaine de caractere en hexa
chaine de caractere en hexa
jeudi 26 janvier 2012 à 11:52:02 |
chaine de caractere en hexa

virtuoze
|
Bonjour à tous , j'aimerais dans un algo en c ou c++ demander a un utilisateur de rentrer un chaine de caractère en hexa pour que je puisse aprés rentrer cette chaine dans un tableau pour ensuite l'afficher.
Quelqu'un pourrait-il me faire un exemple simple pour que je comprenne comment faire ??
Le but de moj programme est d'envoyer une trame par RS232 pour info .
VOILA , merci d'avance pour vos réponse 
|
|
jeudi 26 janvier 2012 à 13:45:30 |
Re : chaine de caractere en hexa

CptPingu
|
Bonjour.
As tu regardé du côté de scanf ? Notamment les options "%X" et "%x" ?
________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
|
|
jeudi 26 janvier 2012 à 14:30:21 |
Re : chaine de caractere en hexa

Renfield
|
gaffe, je crois voir un probleme de comprehension du coté representatif (pour humain) de l'hexa
Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
|
|
jeudi 26 janvier 2012 à 14:34:15 |
Re : chaine de caractere en hexa

CptPingu
|
@Renfield: Difficile de dire s'il veut récupérer une chaine en hexa via l'entrée standard ou s'il pense, à tord, qu'il faut une variable spéciale pour stocker de l'hexa (et confond alors représentation et valeur). Je lui ai laissé le bénéfice du doute :p
________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
|
|
jeudi 26 janvier 2012 à 15:28:36 |
Re : chaine de caractere en hexa

virtuoze
|
En gros je veux que l'utilisateur puisse entrer une trame du genre 01 03 00 45 01 85 DE
que cette chaine soit stocké dans un tableau pour etre envoyer par la suite sur une liaison RS232.
Mon soucis est que une fois que l'utilisateur entre ces valeurs, l'ordi considère que ce sont des caractères donc par exemple il transforme DE en hexa alors que je veux qu'il est considère directement cette chaine comme des valeurs Hexa. Je sais pas si j'arrive a me faire comprendre je suis amateur donc je m'en excuse d'avance ^^.
Si vous avez un exemple a me proposer je suis prenneur.
Merci pour ces réponses si rapide.
|
|
jeudi 26 janvier 2012 à 15:38:56 |
Re : chaine de caractere en hexa

CptPingu
|
Réponse acceptée !
Ok, donc c'est la 2 :)
Tu confonds représentation et valeur.
Une valeur quelque soit sa représentation, est la même. On est bien d'accord que 65 décimal, c'est la même valeur que 0x41. Seul la représentation change.
Ex:
Code C/C++ : int a = 65; <=> int a = 0x41; <=> int a = 0101 <=> int a = 'A';
Ou encore:
Code C/C++ :
#include <stdio.h>
int main(void)
{
int a = 65;
printf("%i '%c' 0x%x 0x%X %o\n", a, a, a, a, a);
return 0;
}
En d'autre terme, demander une valeur en héxadécimal ou en décimal, c'est demander une valeur et c'est tout. Tu mettras ça dans un entier dans tous les cas. Il te faut juste "parser" la chaîne de caractères, ce que fais déjà scanf et son option %x.
Petit exemple:
Code C/C++ :
#include <stdio.h>
void sendTrame(int trame)
{
printf("Envoie de la trame: 0x%x\n", trame);
/* code */
}
int main(void)
{
int trame = 0;
scanf("%x", &trame);
sendTrame(trame);
return 0;
}
________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
|
|
jeudi 26 janvier 2012 à 17:48:41 |
Re : chaine de caractere en hexa

buno
|
Hello,
Si tu veux saisir le caractère "X" pour le transformer en valeur hexa x, une simple soustraction suffit:
- si c'est un chiffre
Code C/C++ :
char charSaisi;
// saisie du caractère. Par exemple "0" (représentation décimale = 48)
// ..
char valeurHexa = charSaisi - 48; // 48-48 = 0, donc 0 en hexa
- si c'est une lettre
Code C/C++ :
// Cas Majuscule
char charSaisi;
// saisie du caractère. Par exemple "A" (représentation décimale = 65)
// ..
char valeurHexa = charSaisi - 55; // 65-55 = 10, donc A en hexa
// cas Miniscule, si besoin
// idem mais 87 à soustraire
Pour t'en convaincre, regardes une table ASCII
@+
Buno, Admin CS
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
|
|
vendredi 27 janvier 2012 à 12:06:05 |
Re : chaine de caractere en hexa

virtuoze
|
Merci à vous pour votre aide.
Pingu tu ma bien eclairé et je pense avoir compris , je vais continuer à coder ca et je reposterais ici si j'ai un autre problème car en tant que amateur je pense que ce projet va me posé des soucis.
MERCI a toi aussi Bruno pour ton aide
|
|
vendredi 27 janvier 2012 à 13:05:05 |
Re : chaine de caractere en hexa

CptPingu
|
Noublie pas de valider la réponse, si elle te convient :).
________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question
|
|
lundi 30 janvier 2012 à 09:23:58 |
Re : chaine de caractere en hexa

virtuoze
|
Ba en faite avant de valider j'ai un autre probleme sur mon programme et vue que que c'est sur le meme programme que celui sur lequel j'ai eu mon probleme de chaine en hexa je ne sais pas si je dois valider ou je Peux poser ma question dessuite apres sachant que cette fois si c'est un probleme avec la structure TIMEOUT.
Je ne comprend pas à quoi servent les membres de cette structur:DWORD ReadIntervalTimeout;
DWORD ReadTotalTimeoutMultiplier;
DWORD ReadTotalTimeoutConstant;
DWORD WriteTotalTimeoutMultiplier;
DWORD WriteTotalTimeoutConstant;
J'ai regardé sur MSDN mais j'ai vraiment du mal à bien comprendre leur utilisation.
Si je dois valider la réponse avant de poser cette question alors je le referais et je reposterais.
Merci d'avance!
|
|
Cette discussion est classée dans : chaine, caractere, hexa, rentrer
Répondre à ce message
Sujets en rapport avec ce message
Convertir une chaine de caractere en Float [ par Johjo ]
Bon, voilà, j'ai encore un probleme.Je dois maintenant convertir un chaine de caractere en float, et je ne trouve pas de fonctions, j'ai regardé dans
PB DE CHAINE DE CARACTERE [ par Orkblutt ]
pkoi ceci me genere t'il une erreur a l'execution??#include void main(){ int o; o=2000; char* O=new char; itoa(o,O,10); char* ch="Fichier"; strcat(ch,
PB DE CHAINE DE CARACTERE [ par Orkblutt ]
pkoi ceci me genere t'il une erreur a l'execution??#include void main(){ int o; o=2000; char* O=new char; itoa(o,O,10); char* ch="Fichier"; strcat(ch,
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
Rechercher une chaine de caractere [ par Johjo ]
Il n'y aurait pas une fonction qui me permette de retrouver une chaine de caractere dans une autreparce moi, je trouve rien du tout :(Si quelqu'un pou
Ajouter des slash [ par Mike ]
SAlut,je recupere une chaine de caractere qui correspond au PATH d'un fichier, ensuite je souhaite l'utiliser comme variable, mais le probleme c que l
Exploitation de fichier en C ?!?!?! [ par GazGaz ]
lu allalors voila le truc c'est que je voudrais aller chercher des infos dans un fichier qui est structuré de la meme maniere lignes apres lignes. Je
[VC++ 6.0] Extraire une chaine d'une CListBox [ par fredcpp ]
Bonjour, j'essaye d'extraire une chaine de caractere ( ou plutot un item qui est une chaine de caractere ) d'une CListBox.Cette CList est bien remplie
chaine de caractere [ par zincben ]
Bonjour je comprend pas tres bien pourquoi ce code passe bien #include void main() { FILE *fp; char nom[10]; fp = fopen("barre.txt", "r+"); if (fp) {
comparation chaine de caractere [ par SfyLer ]
prise de tête j'arrive pas a comparer de chaine de caractere:#include #include char main(void){ char login[6]; cout cin >> login; cout << "\n";<b
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|