[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [linux] Re: aide en c++
manifestement je crois qu'il en a pas fini
La technique de transmission des paramètres non pas par valeur mais par
adresse est appelée "passage par référence".
alors j'ai du mal avec ta phrase suivante:
"La seule différence, c'est le passage des paramètres, une doit être par
pointeur et l'autre par référence."
a tu l'énoncé d'origine ?
> -----Message d'origine-----
> De : Cedric De Wilde [mailto:daique@tiscalinet.be]
> Envoyé : mardi 11 septembre 2001 22:18
> À : linux@lists.unixtech.be
> Objet : [linux] Re: aide en c++
>
>
> Non, ca je sais faire mais le prof veut que l'on passe les parametres
> par references et pas par pointeur. Il veut 2 fonctions qui
> scannent les
> chaines et qui modifient le pointeur de départ par l'add du
> premier chiffre
> rencontré. La seule difference, c'est le passæge des parametres, une
> doit etre par pointeur et l'autre par réference. Il nous a donné cet
> exercice pour voir sion avait compris son explication sur les
> references, personne ne l'a réussi ;)
>
> Voila celle par pointeur:
>
> void modif1(char **t)
> {
> int i = 0;
> int x=0;
> while(**(t+i)){
> for( x = 0 ;*(*(t+i)+x);x++){
> if (isdigit(*(*(t+i)+x))){
> *(t+i)=*(t+i)+x;
> break;
> }
> }
> i++;
> }
> }
>
> Cedric
>
> On Tue, Sep 11, 2001 at 09:07:56PM +0200, Michael Stilmant wrote:
> >
> > > Salut tlm,
> > >
> > > Est ce que quelqu'un pourrait m'expliquer comment passer
> par réference
> > > un tableau de pointeur sur chaine?
> > > Par exemple:
> > >
> > >
> > >
> > > J'arrive a passer une des chaines de caractere a l'autre fonction,
> >
> > char *t[5] = {
> > "un",
> > "de2x",
> > "3tr0is",
> > "quatre445",
> > ""
> > };
> >
> >
> > void foo(char** tableau_address)
> > {
> > char* chaine1,*chaine2,*chaine3;
> > char** prx;
> >
> > prx = tableau_address;
> > chaine1 = *prx;
> > prx++;
> > chaine2 = *prx;
> > prx++;
> > chaine3 = *prx;
> >
> > printf("%s \n %s \n %s",chaine1,chaine2,chaine3);
> > }
> >
> > void foo_autre(char** tableau_address)
> > {
> > char* chaine1,*chaine2,*chaine3;
> >
> > chaine1 = tableau_address[0];
> > chaine2 = tableau_address[1];
> > chaine3 = tableau_address[2];
> >
> > printf("%s \n %s \n %s \n",chaine1,chaine2,chaine3);
> > }
> >
> > main()
> > {
> > foo(t);
> > }
> >
> > [ Soyez précis dans vos sujets svp afin de déterminer directement ]
> > [ le type de demande... ]
> > [ Pour vous (dés)inscrire, aller sur http://unixtech.be/ml.php ]
> > [ Archives de la mailing list: http://archives.unixtech.be/linux/ ]
> > [ http://unixtech.be Contact: listmaster@unixtech.be ]
>
> [ Soyez précis dans vos sujets svp afin de déterminer directement ]
> [ le type de demande... ]
> [ Pour vous (dés)inscrire, aller sur http://unixtech.be/ml.php ]
> [ Archives de la mailing list: http://archives.unixtech.be/linux/ ]
> [ http://unixtech.be Contact: listmaster@unixtech.be ]
>
[ Soyez précis dans vos sujets svp afin de déterminer directement ]
[ le type de demande... ]
[ Pour vous (dés)inscrire, aller sur http://unixtech.be/ml.php ]
[ Archives de la mailing list: http://archives.unixtech.be/linux/ ]
[ http://unixtech.be Contact: listmaster@unixtech.be ]