当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C语言 qsort()用法及代码示例



描述

C库函数void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*))对数组进行排序。

声明

以下是 qsort() 函数的声明。

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

参数

  • base- 这是指向要排序的数组的第一个元素的指针。

  • nitems- 这是 base 指向的数组中的元素数。

  • size- 这是数组中每个元素的字节大小。

  • compar- 这是比较两个元素的函数。

返回值

此函数不返回任何值。

示例

下面的例子展示了 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("Before sorting the list is:\n");
   for( n = 0 ; n < 5; n++ ) {
      printf("%d ", values[n]);
   }

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

   printf("\nAfter sorting the list is:\n");
   for( n = 0 ; n < 5; n++ ) {   
      printf("%d ", values[n]);
   }
  
   return(0);
}

让我们编译并运行上面的程序,将产生以下结果 -

Before sorting the list is:
88 56 100 2 25 
After sorting the list is:
2 25 56 88 100

相关用法


注:本文由纯净天空筛选整理自 C library function - qsort()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。