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

  FORUM HardWare.fr
  Programmation
  C

  passer un hexa comme char

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

passer un hexa comme char

n°1413419
yannsar
Posté le 25-07-2006 à 22:25:02  profilanswer
 

Bonjour,
 
question tout bete :
 
j'ai un programme toto.exe pour lequel je dois lui passer un paramètre (string)
 
j'utilise une fonction strcpy pour copier mon param dans une variable.
 
tout marche nickel lorsque je passe un param "azerty" (string)
 
MAIS lorsque je passe un param hexa, ça marche plus ???
 
ex: toto.exe \x61
 
je souhaite qu'il m'affiche "a" ????
 
avez vous une idée ?
 
merci

mood
Publicité
Posté le 25-07-2006 à 22:25:02  profilanswer
 

n°1413429
_darkalt3_
Proctopathe
Posté le 25-07-2006 à 22:48:58  profilanswer
 

je dirais que c'est parce qu'il te choppe la string "\x61" au lieu du char 0x61.


---------------
Töp of the plöp
n°1413440
Emmanuel D​elahaye
C is a sharp tool
Posté le 25-07-2006 à 23:03:38  profilanswer
 

yannsar a écrit :


MAIS lorsque je passe un param hexa, ça marche plus ???
 
ex: toto.exe \x61
 
je souhaite qu'il m'affiche "a" ????


On est supposés deviner ton code ?


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1413445
yannsar
Posté le 25-07-2006 à 23:07:22  profilanswer
 

c'est exactement ça !!! il prend un string au lieu d'un char 0x61
 
mon code :
 
#include <stdio.h>
#include <string.h>
 
static void cpy_arg (const char *);
 
int main (int argc, char **argv)
{
   if (argc == 2)
   {
      cpy_arg (argv[1]);
      printf ("argv[1] copier\n" );
   }
   return 0;
}
 
static void cpy_arg (const char *s)
{
   if (s)
   {
      char text[20];
 
      strcpy (text, s);
   }
}

n°1413449
_darkalt3_
Proctopathe
Posté le 25-07-2006 à 23:10:23  profilanswer
 

donc il faut ... ?
 
(et édite en rajoutant des balises codes stp)


---------------
Töp of the plöp
n°1413462
Emmanuel D​elahaye
C is a sharp tool
Posté le 25-07-2006 à 23:25:27  profilanswer
 

yannsar a écrit :


Code :
  1. static void cpy_arg (const char *s)
  2. {
  3.    if (s)
  4.    {
  5.       char text[20];
  6.       strcpy (text, s);
  7.    }
  8. }



OK, tu copies le paramètre dans une variable locale, et celle-ci est détruite en quittant la fonction. C'etait quoi le but ?
 


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1413472
yannsar
Posté le 25-07-2006 à 23:43:35  profilanswer
 

en ajoutant ça : printf("%s",text);
 
si je lance toto.exe abc\0x18\0x13\0x40
 
il me renvoie la chaine sans intrepréter le code hexa pour me remplacer le tout par des caracteres

n°1413477
Emmanuel D​elahaye
C is a sharp tool
Posté le 25-07-2006 à 23:52:25  profilanswer
 

yannsar a écrit :

en ajoutant ça : printf("%s",text);
 
si je lance toto.exe abc\0x18\0x13\0x40
 
il me renvoie la chaine sans intrepréter le code hexa pour me remplacer le tout par des caracteres


Pourquoi ferait-il ça ? C'est le compilateur qui interprète les chaines en dur, pas le programme. Là, c'est une chaine connue à l'exécution, le compilateur n'est plus là. Le C n'est pas interprété.
 
Mais tu peux écrire du code qui interprète ça à l'exécution...


---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1413487
yannsar
Posté le 26-07-2006 à 00:03:13  profilanswer
 

capito !
 
merci


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

  passer un hexa comme char

 

Sujets relatifs
Passer une variable dans la définition d'un widthDifferentes facons de passer un pointeur.....
[Javascript/PHP] Récuperer le contenu d'un array et le passer par GETpasser passord à su dans script unix
Passer des parametres dans une fonction JSNe pas passer par le navigateur pour ouvrir un pdf
[ VB6] [Résolu] Passer un argument a une Macro[abandonné] Aide pour passer au php!
Passer un nom de feuille en variable[C] Comment passer un tableau de 2 char en un chiffre hexa
Plus de sujets relatifs à : passer un hexa comme char


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