Passer un tableau dynamique en paramètre d'une fonction [Résolu]

cs_Cascador 3 Messages postés vendredi 19 mai 2006Date d'inscription 14 août 2006 Dernière intervention - 11 août 2006 à 15:21 - Dernière réponse : cs_Cascador 3 Messages postés vendredi 19 mai 2006Date d'inscription 14 août 2006 Dernière intervention
- 14 août 2006 à 10:54
Bonjour,


Je développe un programme en dev C++. J'ai créer un tableau dynamique, et j'ai besoin de le passer en paramètre, mais il n'y a rien à faire. Techniquement quand on fait :

    scenario *debutS = new scenario[Nbr];

*debutS est le pointeur du début du tableau

mais si je veux  le passer en paramètre j'appelle la fonction :

   fonction(debutS);

et c'est dans la réception que je ne vois pas comment faire :

   int fonction(scenario *ptr){

//comment accéder aux données du tableau dynamique
//et en modifier certaines ?


   }

Dans les variables globales, "scenario" est déclaré comme suit :

class scenario{
      public:
       float Pu;
       bool Instant;
       float In[H_MAX];
       float PHIn[H_MAX];
};

Voilà voilà, est-ce que quelqu'un qui passerait dans le coin aurait une solution.
D'avance merci.

Jérôme
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
cs_laurent1024 987 Messages postés mardi 31 mai 2005Date d'inscription 30 août 2012 Dernière intervention - 11 août 2006 à 15:33
3
Merci
fonction modifcation(senario * tab, int taille)

{

 /*   verifier que tab pas nul

et apres acces au tableau*/

acces au element comme dans fonction principale car on bosse avec les pointeurs

}


main (...)

{

...

    scenario *debutS = new scenario[Nbr];

    modification(debutS, Nbr);

}


++

Merci cs_laurent1024 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de cs_laurent1024
Meilleure réponse
steve_clamage 475 Messages postés dimanche 3 octobre 2004Date d'inscription 11 août 2006 Dernière intervention - 11 août 2006 à 18:09
3
Merci
#include <vector>


int fonction(std::vector<scenario> & tableau_scenarios)

{

/* A manipuler comme un tableau, peut etre modifier sinon passer en const. */

 }


std::vector<scenario> tableau_scenarios(Nbr);

Merci steve_clamage 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de steve_clamage
Meilleure réponse
vecchio56 6539 Messages postés lundi 16 décembre 2002Date d'inscription 22 août 2010 Dernière intervention - 11 août 2006 à 23:21
3
Merci
steve_clamage tu réponds pas un peu a coté?

 int fonction(scenario *ptr)
{
  ptr[0].Pu = 1.0;
  bool = ptr[1].Instant;
}

Mais comme l'a dit laurent1024, il est préférable de passer aussi la taille en argument, car aucun moyen de la retrouver sinon

_____________________________________

Merci vecchio56 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 72 internautes ce mois-ci

Commenter la réponse de vecchio56
cs_Cascador 3 Messages postés vendredi 19 mai 2006Date d'inscription 14 août 2006 Dernière intervention - 14 août 2006 à 10:54
0
Merci
Ok, merci les gars, je peux passer le pointeur en paramètre, et ça a l'air de fonctionner. Je me suis fait piègé par dev C++ qui ne reconnait pas automatiquement (avec le menu déroulant) la structure "scenario", alors je me suis dit que ça ne marcherai pas, mais finalement ça compile.

Merci encore
Commenter la réponse de cs_Cascador

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.