0
How to sort a multidimensional array by qsort function from #cstdlib?
For example {{1,6},{2,3},{3,8},{4,0}} -> {{4,0},{2,3},{1,6},{3,8}} Now it's sorted by 1 index How to write a comparator for this? Comparator for a simple array int compare(const void * x1, const void * x2){ return (*(int*)x1-*(int*)x2); } I'm not sure at all how it works
1 Réponse
+ 2
int comp(const void *x1, const void *x2)
{
return *((int*)x1+1) > *((int*)x2+1) ;
}
int arr[][2] = {{1,6}, {2,3}, {3,8}, {4,0}};
qsort(arr, 4, sizeof arr[0], comp);