Utilisation qsort sur chaine de caractere
Bonjour,
j'essaie de faire fonctionner ma fonction de comparaison pour utiliser qsort mais pour le moment, je n'arrive pas a passer les paramètres. J'ai essayé 2 manières de le faire mais aucune ne me donne ce que je veux.
Voici un extrait de mon code, arrengé pour le condenser:
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
|
int main()
{
char buffer[1000][260]={0};
.
. // le tableau se remplit
.
//qsort(buffer, sizeof buffer / sizeof *buffer, sizeof *buffer, compare);
qsort( buffer, 1000, 260, compare);
}
int compare(void const *a, void const *b)
{
int i=0, j=0;
/* definir des pointeurs type's et initialise's
avec les parametres */
char const *const *pa = a;
char const *const *pb = b;
while( pa[i]!='\0' || pb[j]!='\0' ) // tant que l'on est pas arrivé au caractere fin de chaine
{
}
} |
Le souci c'est que je rentre dans une boucle infini car 'pa' est un pointeur incorrect et le a et b en paramètres sont déjà incorrect quand je rentre dans la fonction. Je pense que cela provient des mes paramètres dans qsort, enfin je pense.
Merci d'avance pour votre aide