bete question - Programmation
Marsh Posté le 04-04-2002 à 22:10:47
Quand tu passes le tableau, tu ne passes pas toutes les valeurs, mais juste un pointeur vers le premier entier.
Je ne pense pas que tu puisses simplement passer une copie du tableau
[jfdsdjhfuetppo]--Message édité par antp--[/jfdsdjhfuetppo]
Marsh Posté le 04-04-2002 à 22:12:24
red faction a écrit a écrit : #include <stdio.h> void ttt(int tab2[]){ tab2[0]=2; } int main(){ int tab[10]; tab[0]=5; printf("%d\n",tab[0]); ttt(tab); printf("%d\n",tab[0]); return 0; } voila, jai remarque que tab avait ete modifie apres avoir lance la fonction .... ya moyen de pouvoir utiliser tab2 sans modifier tab ????????? |
oui en faisant une copie
Marsh Posté le 04-04-2002 à 22:13:24
ouais, faut d'abord le dupliquer (memcopy par exemple) et utiliser le pointeur vers la copie
Marsh Posté le 04-04-2002 à 21:55:34
#include <stdio.h>
void ttt(int tab2[]){
tab2[0]=2;
}
int main(){
int tab[10];
tab[0]=5;
printf("%d\n",tab[0]);
ttt(tab);
printf("%d\n",tab[0]);
return 0;
}
voila, jai remarque que tab avait ete modifie apres avoir lance la fonction .... ya moyen de pouvoir utiliser tab2 sans modifier tab ?????????