Partage
  • Partager sur Facebook
  • Partager sur Twitter

Convertion int en char

Sujet résolu
    16 mars 2008 à 15:33:04

    Bonjour à tous :)

    Je galère depuis un moment pour convertir des entier en char en C++.

    J'ai déjà demander conseil à mon amis Google mais là je sèche :euh:

    J'ai tester les fonctions itoa et sprintf, mais sa ne fonctionne pas (même si le code ne plante pas)
    Je ne sais pas si c'est lié au fait que ce soit des fonctions en C (pour info j'ai bien inclu stdio et stdlib)

    J'ai voulu tester avec la fonction stringstream mais là c'est à l'inclusion que sa plante...
    Est-ce qu'il faut une librairie particulière ? (je pensais que c'était inclut dans la librairie standard)

    Sa fait beaucoup de question tout sa :-°

    Du coup je résume... :p Comment faire pour convertir des int en char en C++ ? (pas en C)

    Merci d'avance à ceux qui prendront le temps de me répondre :)

    Cordialement,
    Craƒty
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      16 mars 2008 à 15:36:49

      pour convertir des entier en char sufit de faire
      char p[0] = '/0';
      unsigned int i = 75; i compris entre 0 et 254 sinon sa marche pas ou -128 et 127 si i est signed

      et p[0] = i;

      ps : tu peut le faire avec string il me semble aussi cf la faq de develloppez
      • Partager sur Facebook
      • Partager sur Twitter
        16 mars 2008 à 15:38:53

        printf et co. c'est de C, donc a bannir

        1. #include <sstream>
        2. std::ostringstream Oss;
        3. Oss << 2;
        4. std::string S = Oss.str();
        5. // maintenant a toi de te debrouiller


        ou alors tout simplement un cast

        • Partager sur Facebook
        • Partager sur Twitter
          16 mars 2008 à 15:46:50

          Merci pour vos réponse et la rapidité à laquelle vous avez répondu :p

          Je vais voir ce que j'arrive à faire ;)


          Chlab_lak => en quoi consiste le cast ?
          • Partager sur Facebook
          • Partager sur Twitter
            16 mars 2008 à 16:14:04

            ne confond pas char et tableau de char (chaine)

            car un char, c'est un "petit int" qui varie de -128 a +127.
            Transformer un int en char revient donc a faire un cast

            int i;
            char c = (char)i;

            Mais je ne pense pas que que c'est ce que tu veux faire.
            • Partager sur Facebook
            • Partager sur Twitter

            Recueil de code C et C++  http://fvirtman.free.fr/recueil/index.html

              16 mars 2008 à 18:24:05

              Merci pour vos réponses :)

              Le problème est résolu :p

              Maintenant il me reste plus qu'à résoudre mes fuites de mémoire :-°

              Bonne soirée !
              • Partager sur Facebook
              • Partager sur Twitter

              Convertion int en char

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown