c++ qsort的使用

2021-05-02 07:28

阅读:329

标签:lan   std   table   需要   ecs   文件   size_t   ble   使用   

c++ qsort的使用

qsort函数定义在头文件algorithm中,使用时需要include该头文件

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

cplusplus地址:http://www.cplusplus.com/reference/cstdlib/qsort/?kw=qsort

用法介绍

排序数组元素

base 数组首地址

num 待排序的元素数量

size 元素大小

compare int compar (const void* p1, const void* p2); 格式的比较函数

  • compare return value
    p1 > p2 > 0
    p1 == p2 0
    p1

使用示例

struct record
{
    double ratio;
};

//cmp函数
int compare(const void *r1, const void *r2)
{
    if ((*(record *) r1).ratio == (*(record *) r2).ratio) return 0;
    if ((*(record *) r1).ratio > (*(record *) r2).ratio) return 1;
    return -1;
}

int main{
    ...... 
    record recs[100];
    qsort(recs, 100, sizeof(record), compare);
    ......
}

c++ qsort的使用

标签:lan   std   table   需要   ecs   文件   size_t   ble   使用   

原文地址:https://www.cnblogs.com/aminor/p/13204674.html


评论


亲,登录后才可以留言!