24 lines
636 B
C
24 lines
636 B
C
|
|
#include <stdio.h>
|
||
|
|
#include <stdlib.h>
|
||
|
|
typedef struct {
|
||
|
|
int age;
|
||
|
|
} CompareObj;
|
||
|
|
|
||
|
|
// 比较函数,用于 qsort
|
||
|
|
int compare(const void *a, const void *b) {
|
||
|
|
CompareObj *objA = (CompareObj *)a;
|
||
|
|
CompareObj *objB = (CompareObj *)b;
|
||
|
|
return (objA->age - objB->age); // 按从小到大排序
|
||
|
|
}
|
||
|
|
void printObj(CompareObj obj) {
|
||
|
|
printf("我的年龄:%d\n", obj.age);
|
||
|
|
}
|
||
|
|
int main() {
|
||
|
|
CompareObj objs[3]; // 初始化对象数组
|
||
|
|
objs[0].age = 20; objs[1].age = 30; objs[2].age = 25;
|
||
|
|
qsort(objs, 3, sizeof(CompareObj), compare);
|
||
|
|
for (int i = 0; i < 3; i++)
|
||
|
|
printObj(objs[i]);
|
||
|
|
return 0;
|
||
|
|
}
|