il y'a des valeurs de tabS qui ressemble exactement à tabDF mais jamais la condition "if" n'est verifié, j'ai beau essayé la même procédure dans un code à part, et ça marche parfaitement.
le tableau tabS c'est un tableau char **tabS une dimension mais de chaine de caractère, le deuxième tabDF c'est un char ***tabDF deux dimensions chaine de caractère .
merci pour toute suggestion.
A voir également:
Comparer deux string c++
Compare substring c++ - Meilleures réponses
Comparer deux chaine de caractere en c - Meilleures réponses
BunoCS
Messages postés15472Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention25 mars 2024103 16 déc. 2010 à 14:18
Bon, je pars du principe que ton tableau 2D est bon. Voici l'algo que je verrais.
Pour le parcourir, effectivement, il te faut 2 boucles imbriquées
Après, pour chaque chaine du tableau 2D
Vérifier que cette chaine n'apparait pas dans ton tableau résultat:
Pour chaque chaine sauvée
Est-elle identique à la "chaine 2D"
Si non, l'ajouter*
fpour
fpour
et je fais par exemple: char *chaine; chaine = "truc"; tab2[i][j]=chaine;
puis char *chaine2; chaine2="machin"; tab1[i]=chaine2;
et lors de la comparaison, strcmp(tab1[i],tab2[i][j]) ça foire
roubalist21
Messages postés13Date d'inscriptiondimanche 13 juin 2010StatutMembreDernière intervention27 novembre 2011 16 déc. 2010 à 12:09
justement comment on le rajoute , parceque moi l'allocation dynamique est faite juste pour les cases du tableau, j'ai pas du tout fait l'allocation pour les caractères de la chaine, vu que je ne conné pas la taille de chaque chaine.
BunoCS
Messages postés15472Date d'inscriptionlundi 11 juillet 2005StatutModérateurDernière intervention25 mars 2024103 16 déc. 2010 à 13:56
Je/tu m'embrouilles...
D'où te viennent tes chaines de caractères? L'intérêt justement de l'allocation dynamique réside dans le fait de ne pas connaître les tailles des chaines à la compil.