Probleme d'allocation memoire
Bonjour,
Je suis en train de faire une petite fonction qui decoupe une chaine suivant un delimiteur passer en parametre
Il semble que j'ai un probleme au niveau des mallocs, tout fonctionne sur des petits tests mais quand je lui fournis par exemple le path de l'environnement,je rencontre des bizarreries comme ca :
PATH=/usr/sb.. suivit de caracteres bizarres
/usr/school/.. ""
/usr/netsoul.. ""
Voici le code de ma fonction principal
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
|
char **function_decoupe(char *str, char delimiteur)
{
int i;
int start;
int end;
char **my_word;
char *chaine;
i = 0;
start = 0;
end = 0;
my_word = malloc(sizeof(*my_word) * count_word(str, delimiteur));
while (end < strlen(str) -1)
{
end = delim(str, end, delimiteur) -1;
chaine = affiche(str, start, end);
my_word[i] = malloc(sizeof(**my_word) * strlen(chaine));
my_word[i] = chaine;
i++;
end += 2;
start = end;
}
my_word[i] = NULL;
return (my_word);
} |
Merci de votre aide.
Cordialement,