Renvoi de tableau de pointeurs sur char dans une fonction
bonjour ;;
voila j'ai ecris ce bout de code
Code:
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 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int PartUrlFile(char *Ranges[] ,int nthread)
{
char buff[100] ;
char temp[100] ;
int i = 0 ;
for( i = 0 ; i < nthread; i++)
{
strcpy(buff, "Range :") ;
itoa(i,temp,10);
strcat(buff,temp);
//strcpy(Ranges[i],buff);
Ranges[i] = buff ; // marche Tres bien ** valeur de Ranges[i] modifiee
printf("buff =%s | Ranges[%d]= %s\n", buff, i, Ranges[i]) ; // ca marche ...
}
return 0 ;
}
//char *Range[8];
//char *rr[8];
int main(void)
{
int i = 0 ;
int p = 8 ;
char *Range[8];
PartUrlFile(Range, p);
printf("=========================\n") ;
for ( i=0 ;i < p; i++)
{
printf("in %d = %s\n",i,Range[i]) ; // Probleme ... rien ne marche
}
printf("=========================\n") ;
printf("\nThats all");
getchar();
return EXIT_SUCCESS;
} |
le but est de passer un tableau de pointeur sur char (char*[]) comme parametre dans la fonction PartUrlFile vide pour qu'il se remplisse.
dans la declaration de la fonction les valeurs de char *Ranges[] sont bien affecter mais lors de l'utilisation de cette fonction dans main rien ne marche ...
Quelqu'un a il une idee sur le probleme ..???