#include <stdio.h>
#include <string.h>
#include <stdlib.h>
// 比较函数,用于qsort
int compare(const void *a, const void *b) {
return strcmp(*(const char **)a, *(const char **)b);
}
// 排序函数
void sortStrings(char *strings[], int n) {
qsort(strings, n, sizeof(char *), compare);
}
int main() {
char *strings[] = {"banana", "apple", "cherry"};
int n = sizeof(strings) / sizeof(strings[0]);
printf("排序前的字符串数组:\n");
for (int i = 0; i < n; i++) {
printf("%s\n", strings[i]);
}
sortStrings(strings, n);
printf("\n排序后的字符串数组:\n");
for (int i = 0; i < n; i++) {
printf("%s\n", strings[i]);
}
return 0;
}
- compare函数:用于
qsort
的比较函数,通过strcmp
比较两个字符串。
- sortStrings函数:使用
qsort
对字符串指针数组进行排序。
- main函数:定义并初始化字符串指针数组,打印排序前的数组,调用排序函数,然后打印排序后的数组。