[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[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  ]