c语言中sort函数的用法
时间: 2023-10-13 10:22:18 浏览: 411
sort函数是C语言中的标准库函数,用于对数组进行排序。它的用法如下:
```c
void sort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void *));
```
参数说明:
- base:要排序的数组的首地址。
- nitems:要排序的数组中元素的个数。
- size:每个元素的大小,单位为字节。
- compar:比较函数的指针,用于指定元素之间的比较方式。
比较函数的格式如下:
```c
int compar(const void *p1, const void *p2);
```
参数说明:
- p1:指向第一个元素的指针。
- p2:指向第二个元素的指针。
返回值说明:
- 如果p1小于p2,返回负整数。
- 如果p1等于p2,返回0。
- 如果p1大于p2,返回正整数。
例如,以下代码使用sort函数对一个整数数组进行升序排序:
```c
#include <stdio.h>
#include <stdlib.h>
int compar(const void *p1, const void *p2) {
const int *a = (const int *)p1;
const int *b = (const int *)p2;
return (*a - *b);
}
int main() {
int arr[] = { 3, 2, 1, 4, 5 };
int n = sizeof(arr) / sizeof(arr[0]);
sort(arr, n, sizeof(int), compar);
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
```
输出结果为:1 2 3 4 5。
阅读全文