C/C++小知识点:快排函数qsort与函数指针

C/C++小知识点:快排函数qsort与函数指针

  • 快排函数qsort的用法
  • 函数指针的用法
#include <stdio.h>
#include <stdlib.h>

int compRule(const void* elem1, const void* elem2)
{
    return (*(int *)elem1 - *(int *)elem2);
}

void printarray(const void* array, const int& size)
{
    for (int i = 0; i < size; i++)
    {
        printf("%d ", ((int *)array)[i]);    
    }
    printf("\n");
}

int main()
{
    int array[] = {4, 2, 0, 56, 37, 16, 0, 36, 77};
    qsort(array, sizeof(array) / sizeof(int), sizeof(int), &compRule);  //快速排序
    void (* print)(const void *, const int&) = &printarray;             //函数指针
    print(array, sizeof(array) / sizeof(int));
    return 0;
}
上一篇:字符串排序.qsort


下一篇:【C语言】冒泡排序+qsort实现原理