c语言

c语言sort函数中的比较函数写法

小樊
89
2024-07-18 23:28:33
栏目: 编程语言

比较函数的写法如下:

int compare(const void *a, const void *b) {
    // 将void指针转换为相应类型的指针
    int num1 = *((int*)a);
    int num2 = *((int*)b);
    
    if (num1 < num2) {
        return -1;
    } else if (num1 > num2) {
        return 1;
    } else {
        return 0;
    }
}

在比较函数中,参数a和b是指向待比较元素的指针。首先需要将void指针转换为相应类型的指针,然后比较两个元素的大小,返回-1代表a应该排在b之前,1代表a应该排在b之后,0代表a和b相等。

0
看了该问题的人还看了