Convertir char en entier en c

yuri648 Messages postés 785 Statut Membre -  
Hxyp Messages postés 401 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

convertir char t[5] en entier en c, j'ai tenté atoi() mais sa n'a pas marché

merci

1 réponse

  1. Hxyp Messages postés 401 Date d'inscription   Statut Membre Dernière intervention   54
     
    Bonjour,
    il faut remplir t[5] avec un entier sous forme d'une chaine :
    int a; // variable qui récupère 
    char t[5]={"123"};//met la chaine "123" dans t 
    a=atoi(t);//conversion de la chaine en int
    0
    1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Pour mettre la chaine 123 dans t, c'est plutôt char t[5]="123"; (sans les accolades). Ou alors il faut mettre caractère par caractère.

      Cdlt,
      0
    2. Hxyp Messages postés 401 Date d'inscription   Statut Membre Dernière intervention   54
       
      On peut le faire aussi sans enfin c'est par habitude que je les mets car si on tombe sur un double tableau :
      char a[5][5]={{"abc"},{"def"}};
      0
    3. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      On peut le faire aussi sans enfin c'est par habitude que je les mets car si on tombe sur un double tableau :
      char a[5][5]={{"abc"},{"def"}};

      Je ne vois pas l'intérêt. Pour les tableaux 2D, je mets simplement : char a[5][5]={"abc","def"};
      C'est comme si tu disais pour les int, tu faisais : int a={5}; car pour les tableaux 2D, int a[5]={{5},{2},{3}; (int a=5; et int a[5]={5,2,3}; suffisent).
      Enfin, il y a peut-être un détail qui m'échappe ?
      0
    4. Hxyp Messages postés 401 Date d'inscription   Statut Membre Dernière intervention   54
       
      Hm! non y a aucun détail qui t'échappe je fais la même chose avec les char [][] qu'avec les int [][] :'-) mauvais exemple de ma part en utilisant le type char. Ça n'apporte rien juste que dans un code comme :
      int a; // variable qui récupère 
      char t[5]={"123"};//met la chaine "123" dans t 
      a=atoi(t);//conversion de la chaine en int
      

      je préfère avec les {} je n'en aurait pas mis si ça avait été :
      int a; // variable qui récupère 
      const char *t="123";//met la chaine "123" dans t 
      a=atoi(t);//conversion de la chaine en int
      

      c'est surement une de mes pathologies qui fait surface ahahah
      0