Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
814 connectés 

  FORUM HardWare.fr
  Programmation
  C

  Probleme de conversion

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme de conversion

n°570590
muadiib
Posté le 19-11-2003 à 11:57:45  profilanswer
 

Bonjour,
 
Je cherche à convertir un entier (long) en une chaine de caractere et inversement. Mais impossible de me rappeller le nom de la fonction. qqun pourrait-il m'aider?
 
merci
 
ALOHA

mood
Publicité
Posté le 19-11-2003 à 11:57:45  profilanswer
 

n°570591
Taz
bisounours-codeur
Posté le 19-11-2003 à 11:59:41  profilanswer
 

s(n)printf et sscanf

n°570633
muadiib
Posté le 19-11-2003 à 12:32:11  profilanswer
 

merci beaucoup pour cette reponse tres rapide.
Je vais peut etre abuse un peu, mais je cherche aussi un fonction qui puisse faire un decalage de bits.
Par exemple 0xF0 -> 0x0F
 
merci

n°570636
ixemul
Nan mais sans blague ! ⚡
Posté le 19-11-2003 à 12:33:51  profilanswer
 

muadiib a écrit :

merci beaucoup pour cette reponse tres rapide.
Je vais peut etre abuse un peu, mais je cherche aussi un fonction qui puisse faire un decalage de bits.
Par exemple 0xF0 -> 0x0F
 
merci


 
avec les operateurs de decalage << (decalage à gauche) et >> (le meme a droite  :whistle: )

n°570639
Taz
bisounours-codeur
Posté le 19-11-2003 à 12:34:20  profilanswer
 

0xF0 >> 4

n°570784
muadiib
Posté le 19-11-2003 à 15:20:36  profilanswer
 

encore une fois merci...
Derniere question (cette fois ci c'est la bonne). J'ai une chaine de caractere de n caractere. Je veux pouvoir la lire par groupe de 2 caractere. Comment puis je faire?
 
merci

n°570841
Taz
bisounours-codeur
Posté le 19-11-2003 à 16:06:27  profilanswer
 

ben tu lis 2 caracteres par 2 caracteres

n°570842
Moktar1er
No one replies...
Posté le 19-11-2003 à 16:07:42  profilanswer
 

muadiib a écrit :

encore une fois merci...
Derniere question (cette fois ci c'est la bonne). J'ai une chaine de caractere de n caractere. Je veux pouvoir la lire par groupe de 2 caractere. Comment puis je faire?
 
merci


 

Taz a écrit :

ben tu lis 2 caracteres par 2 caracteres


 
[:meganne]

n°570846
muadiib
Posté le 19-11-2003 à 16:11:38  profilanswer
 

Mais comment je fait ca. En fait les donnees sont en char mais c'est la valeur hexa qui m'interesse. Et je veut pouvoir lire les donnees par paquet de 16 bits en une fois.

n°570851
Moktar1er
No one replies...
Posté le 19-11-2003 à 16:13:47  profilanswer
 

Une boucle du début à la fin de la chaîne avec un pas de 2.
Du moins un truc qui ressemble à ça

mood
Publicité
Posté le 19-11-2003 à 16:13:47  profilanswer
 

n°570854
muadiib
Posté le 19-11-2003 à 16:19:16  profilanswer
 

Justement, comment tu fait le pas de 2?
Parceque pour le moment je un truc du genre
tab[i] mais cela ne me sort que un octet (logique)... et j'en veut 2.

n°570869
Moktar1er
No one replies...
Posté le 19-11-2003 à 16:28:46  profilanswer
 

bah tu copies tes 2 caractères dans une chaine temporaire de taille 2, puis sscanf tout ça...

n°570878
muadiib
Posté le 19-11-2003 à 16:38:02  profilanswer
 

C'est justement ce que je veux eviter : faire 2 copies pour lire une valeur.

n°570880
Moktar1er
No one replies...
Posté le 19-11-2003 à 16:39:23  profilanswer
 

sinon un truc crade, tu fais un pointeur vers un objet de 2*sizeof(char), et tu fais pointer au bon endroit sur la chaîne

n°570884
torpe23
Posté le 19-11-2003 à 16:43:03  profilanswer
 

unsigned short 2car;
 
for(i=0;i<n;i+=2){
  2car = tab[i]<<8 | tab[i+1];
}

n°570885
muadiib
Posté le 19-11-2003 à 16:43:16  profilanswer
 

Je m'exprime en fait assez mal, donc je vais recommencer.
J'ai une chaine de 4 caracteres : "1234" et je ne veux par recuperer "1234" mais 0x31323334 c'est a dire la valeur hexa de "1234".  
Et pour finir je veux copier en une fois deux caracteres soit 2 octets.
 
merci de m'aider

n°570935
Taz
bisounours-codeur
Posté le 19-11-2003 à 17:30:33  profilanswer
 

muadiib a écrit :

C'est justement ce que je veux eviter : faire 2 copies pour lire une valeur.

tu crois pas que t'en fais un peu trop ? y a 2 tu connaissais pas sscanf ...
 
tu peux faire "%c%c", s[i], s[i+1]) de toutes façons ....


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  Probleme de conversion

 

Sujets relatifs
Problème de conversion avec les fonctions pack & unpack[C++/GP32] Problème de conversion invalide
Problème de conversion de format de date....Conversion little endian - big endian: problème chaines de caractères
[MySQL] Problème de conversion INT ------> DATEProblème de conversion de float en int
[Delphi] p'tit problème conversion cpp vers delphi[php] probleme de conversion :) un petit coup de main serait sympa
Nouveau problème de conversionProblème accents : conversion BDD DBASE en MYSQL
Plus de sujets relatifs à : Probleme de conversion


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR