C语言中怎么用sort函数对vector排序

avatar
作者
筋斗云
阅读量:0

在C语言中,可以使用sort函数对vector进行排序。下面是一个示例代码:

#include <stdio.h> #include <stdlib.h>  // 比较函数,用于sort函数的第三个参数 int compare(const void *a, const void *b) {     return (*(int*)a - *(int*)b); }  int main() {     int arr[] = {5, 2, 8, 1, 9};     int size = sizeof(arr) / sizeof(arr[0]);          // 对vector进行排序     qsort(arr, size, sizeof(int), compare);          // 打印排序后的vector     for (int i = 0; i < size; i++) {         printf("%d ", arr[i]);     }          return 0; } 

输出结果为:1 2 5 8 9

在这个示例中,我们使用qsort函数进行排序。qsort函数的第一个参数是待排序的数组名,第二个参数是数组的大小(元素个数),第三个参数是元素的大小(以字节为单位),第四个参数是一个比较函数的指针。比较函数用于比较两个元素的大小,返回一个负值、零或正值,表示第一个元素小于、等于或大于第二个元素。在本例中,我们使用compare函数作为比较函数,对数组进行升序排序。最后,使用循环打印排序后的数组。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!