Latest web development tutorials

Funkcje C Biblioteka - qsort ()

Biblioteka standardowa języka C - <stdlib.h> Biblioteka standardowa języka C - <stdlib.h>

opis

Funkcje biblioteki Cvoid qsort (void * podstawa, size_t nitems, size_t size, int (* compar) (const void *, const void *)) , aby posortować tablicę.

oświadczenie

Oto deklaracja FUNCTION qsort () za.

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

parametry

  • podstawa - wskaźnik do pierwszego elementu tablicy, które mają być sortowane.
  • nitems - liczba punktów na bazie elementów macierzy.
  • size - wielkość każdego elementu w tablicy w bajtach.
  • compar - funkcja stosowana do porównania dwóch elementów.

Wartość zwracana

Ta funkcja nie zwraca wartości.

Przykłady

Poniższy przykład demonstruje funkcja qsort () jest używana.

#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("排序之前的列表:\n");
   for( n = 0 ; n < 5; n++ ) {
      printf("%d ", values[n]);
   }

   qsort(values, 5, sizeof(int), cmpfunc);

   printf("\n排序之后的列表:\n");
   for( n = 0 ; n < 5; n++ ) {
      printf("%d ", values[n]);
   }
  
  return(0);
}

Załóżmy, skompilować i uruchomić powyższy program, który spowoduje w następujących przypadkach:

排序之前的列表:
88 56 100 2 25 
排序之后的列表:
2 25 56 88 100

Biblioteka standardowa języka C - <stdlib.h> Biblioteka standardowa języka C - <stdlib.h>