IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C++ Discussion :

Tableau en parametre


Sujet :

C++

  1. #1
    Membre du Club Avatar de Freakazoid
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 116
    Points : 65
    Points
    65
    Par défaut Tableau en parametre
    Voila un bou de code que j'ai ecrit mais quelque chose me dit que je n'es pas la bonne méthode pour utiliser un tableau en parametre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    #include <iostream>
     
    using namespace std;
     
    void SetArray(int Dimension,char*** Array)
     
    int main()
    {
        char**           Array;
        int                 i;
     
        SetArray(20,&Array);
        cout << Array[0];
    }
     
    void SetArray(int Dimension,char*** Array)
    {
        char**           TmpArray;
     
        TmpArray = new char*[Dimension];
        for (int i=0; i<Dimension; i++)
        {
            TmpArray[i] = new char[strlen("Test")];
            strcpy(TmpArray[i],"Test");
        }
        *Array = TmpArray;
    }

  2. #2
    Membre actif Avatar de Grulim
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 234
    Points : 288
    Points
    288
    Par défaut
    il faut utiliser les balises codes !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    #include <iostream>
     
    using namespace std;
     
    void SetArray(int Dimension,char*** Array)
     
    int main()
    {
    char** Array;
    int i;
     
    SetArray(20,&Array);
    cout << Array[0];
    }
     
    void SetArray(int Dimension,char*** Array)
    {
      char** TmpArray;
     
      TmpArray = new char*[Dimension];
      for (int i=0; i<Dimension; i++)
      {
        TmpArray[i] = new char[strlen("Test")];
        strcpy(TmpArray[i],"Test");
      }
      *Array = TmpArray;
    }
    la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TmpArray[i] = new char[strlen("Test")];
    devrait être:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TmpArray[i] = new char[strlen("Test") + 1];
    de plus tu pourrais utiliser vector<string>, non ?

  3. #3
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 275
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 275
    Points : 10 985
    Points
    10 985
    Par défaut
    Arg
    1- référence, ou tester si pointeur non null
    2- strlen+1 toujours +1 pour alloc dynamique
    3- Si les new de la boucle lancent une exception, il faut libérer tout ce qui a été alloué précédemment

    Conclusion std::vector<std::string> est notre ami.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne réponds à aucune question technique par le biais de ce média. Et de toutes façons, ma BAL sur dvpz est pleine...

  4. #4
    Membre du Club Avatar de Freakazoid
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 116
    Points : 65
    Points
    65
    Par défaut
    Okk désoler pour les balise j'ai oublier de les metres et en fait je voulais juste savoir comme sa. Je vais passé au vector et tous, c klr que c plus simple.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. debutant delphi - tableau en parametre
    Par damienlann dans le forum Débuter
    Réponses: 3
    Dernier message: 09/05/2006, 09h18
  2. passage d'un tableau en parametre d'une fonction
    Par ataya dans le forum C++Builder
    Réponses: 10
    Dernier message: 26/10/2005, 13h30
  3. Passer un tableau en parametre dans une fonction js
    Par hellmaster78 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 19/06/2005, 14h35
  4. Tableau en paramètre - Shell et Awk
    Par gc243 dans le forum Linux
    Réponses: 7
    Dernier message: 10/12/2003, 13h32
  5. transmision de tableau en parametre
    Par Horus dans le forum C++Builder
    Réponses: 3
    Dernier message: 16/05/2002, 11h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo