deck_bsd
Messages postés1243Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention 3 août 2016
-
24 oct. 2006 à 20:33
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 2010
-
25 oct. 2006 à 19:49
Bonjour a tous,
Voila, je voudrai trier ce tableau :
char nt[][100] = {"un","trois","quatre","cinq","a","bb","b","axxxxxxxxxxxxxxxxxxx"};
Avec la fonction standart qsort :s. Voici donc comment je l'utilise :
qsort(nt,8,sizeof(1),strcmp);
Ne vous souciez pas du sizeof(1), en faite quand je fait ça, ça trie sans prendre en compte la taille des donnée. Le soucis est que mon tableau reste comme il est. Je pense qu'il faut faire un pointeur sur la fonction strcmp, mais bon je voi pas trop. J'ai commencé ceci
rrk275
Messages postés540Date d'inscriptionvendredi 25 juin 2004StatutMembreDernière intervention 1 octobre 20072 24 oct. 2006 à 22:09
Ne vous souciez pas du sizeof(1), en faite quand je fait ça, ça trie sans prendre en compte la taille des donnée. ?
-> le sizeof() c'est pas pour toi c'est pour lui..
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 25 oct. 2006 à 19:49
sizeof(1) marchera pour un int[], mais pas pour un char[].
De manière générale, il faut faire
qsort(nt,sizeof nt / sizeof nt[0], sizeof nt[0],compare);
quel que soit le type de nt