English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base C

Contrôle de flux C

Fonctions du langage C

Tableaux en langage C

Pointeurs en langage C

Chains de caractères en langage C

Structure C

Fichier C

Autres C

Manuel de référence C

Utilisation et exemple de la fonction qsort() de la bibliothèque C

Bibliothèque standard C - <stdlib.h>

Fonction de bibliothèque C void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*)) Trier un tableau.

Déclaration

Voici la déclaration de la fonction qsort().

void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*))

Paramètres

  • base -- Pointeur vers le premier élément de l'array à trier.
  • nitems -- Le nombre d'éléments de l'array pointé par base.
  • size -- La taille de chaque élément de l'array, en octets.
  • compar -- Fonction utilisée pour comparer deux éléments.

Valeur de retour

Cette fonction ne renvoie aucune valeur.

Exemple en ligne

L'exemple suivant montre l'utilisation de la fonction qsort().

#include <stdio.h>
#include <stdlib.h>
int values[] = { 88, 56, 100, 2, 25 });
int cmpfunc (const void * a, const void * b)
{
   return ( *(int*)a - *(int*)b );
}
int main()
{
   int n;
   printf("Liste avant le tri :\n");
   for( n = 0 ; n < 5; n++ ) {
      printf("%d ", values[n]);
   }
   qsort(values, 5, sizeof(int), cmpfunc);
   printf("\nTrie après le tri :\n");
   for( n = 0 ; n < 5; n++ ) {
      printf("%d ", values[n]);
   }
  return(0);
}

Compilons et exécutons le programme ci-dessus, cela produira le résultat suivant :

Liste avant tri
88 56 100 2 25 
Liste triée après tri
2 25 56 88 100

Bibliothèque standard C - <stdlib.h>