#include<stdio.h>
#include<stdlib.h>
int comp(const void *,const void *);
int main()
{
int a[5]={10,2,3,4,5};
qsort(a,5,sizeof(int),comp);
for (int i=0;i<5;i++)
printf("%d ",a[i]);
puts("");
return 0;
}
int comp(const void *p1,const void *p2)
{
const int *a1=p1;
const int *a2=p2;
if(*a1>*a2)
return -1;
else if(*a1==*a2)
return 0;
else
return 1;
}
为了测试qsort函数而作的代码,但在comp函数中的数据转换a1和a2两行报错了
#include<stdlib.h>
int comp(const void *,const void *);
int main()
{
int a[5]={10,2,3,4,5};
qsort(a,5,sizeof(int),comp);
for (int i=0;i<5;i++)
printf("%d ",a[i]);
puts("");
return 0;
}
int comp(const void *p1,const void *p2)
{
const int *a1=p1;
const int *a2=p2;
if(*a1>*a2)
return -1;
else if(*a1==*a2)
return 0;
else
return 1;
}
为了测试qsort函数而作的代码,但在comp函数中的数据转换a1和a2两行报错了