Partage
  • Partager sur Facebook
  • Partager sur Twitter

Tableau de pointeurs sur chaines

une seule dimension définie

    14 juin 2007 à 17:23:30

    bonjour

    je veux avoir un tableau a deux dimensions en char et que chacun des elements pointe vers un autre

            register int    i;
            char            **names;

            names = new char [5]; // <== LIGNE 21
    //menu_main.cpp(21) : error C2440: '=' : impossible de convertir de 'char *' en 'char **'
            for (i = 0; i < 5; i++)
            {
                    names[i] = new char[strlen(menu1[i].name)];
                    names[i] = menu1[i].name;
            }
            aff_n_elem(graph, 5, names);
            for (i = 0; i < 5; i++)
                    delete names[i];
            delete new;

    merci de me dire comment regler le problème
    ps: j'ai essayé : names = new char [5][5]; // <== LIGNE 21, mais rien n'a changé
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      14 juin 2007 à 17:32:35

      En fait, tu ne veux pas créer un tableau de char, mais un tableau de char*. Voilà ce qu'il faut changer.
      Mais dans tous les cas, le mieux est d'utiliser la classe std::string et donc un tableau de std::string.
      • Partager sur Facebook
      • Partager sur Twitter
        14 juin 2007 à 19:26:58

        Ne fais pas d'allocation dynamique
        • Partager sur Facebook
        • Partager sur Twitter
          14 juin 2007 à 22:33:03

          Citation : night sword

          Ne fais pas d'allocation dynamique



          'taing super conseil, t'en as pas des mieux encore ?!

          Comme dit Cyprien il faut que tu fasses :

          names = new char*[5];
          • Partager sur Facebook
          • Partager sur Twitter
            14 juin 2007 à 22:51:54

            std::vector<std::string> >, c'est bien aussi.
            • Partager sur Facebook
            • Partager sur Twitter
            C++: Blog|FAQ C++ dvpz|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS| Bons livres sur le C++| PS: Je ne réponds pas aux questions techniques par MP.

            Tableau de pointeurs sur chaines

            × 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