Partage
  • Partager sur Facebook
  • Partager sur Twitter

allocation dynamique spéciale

Sujet résolu
Anonyme
    10 juillet 2007 à 16:11:56

    Bonjour à tous,
    Voila mon problème j'aimerais pouvoir créer une chaine de caractère d'une certaine longueur qu'on ne connaitrait qu'après l'avoir rentré au clavier.
    Je prends un exemple simple : imaginons qu'on demande le nom d'une personne mais que l'on ne sait pas la longueur de ce nom on va devoir créer un char[] de longueur inconnue jusqu'à ce que l'utilisateur le rentre au clavier.
    voila un exemple qui ne marche bien sur pas :
    #include <iostream>
    #include <string.h>

    using namespace std;

    int main()
    {
        char *nom;
        cout << "Quel est ton nom ?"<< endl;
        cin >> nom;
        nom = new char[strlen(nom)];
        cout << "salut " << nom << endl;
        delete[] nom;
        return 0;
    }

    Merci d'avance.
    • Partager sur Facebook
    • Partager sur Twitter
      10 juillet 2007 à 16:15:53

      salut,

      tu codes en c++ alors utilise les classes qui facilitent tout : prends des std::string
      • Partager sur Facebook
      • Partager sur Twitter
        10 juillet 2007 à 16:18:34

        Comme déjà dit au-dessus, en C++ on oublie les char*, la classe <string> est tellement plus facile à utiliser qu'il y a aucune raison de s'en priver.

        Pour des détails d'utilisation, je te renvoie au tuto de Matteo dans la partie C++ il en parle.
        • Partager sur Facebook
        • Partager sur Twitter
        Co-auteur du cours de C++. ||| Posez vos questions sur le forum ||| Me contacter.
        Anonyme
          10 juillet 2007 à 16:20:39

          a oui ok merci bien
          • Partager sur Facebook
          • Partager sur Twitter

          allocation dynamique spéciale

          × 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