我正在尝试使用 C 中的内置 qsort 函数对结构进行排序
typedef struct abc{
long long int fir;
long long int sec;
}abc;
在比较函数中,我使用了下面的代码,以便如果结构 abc 数组中任意两个元素之间的变量“fir”相同,则排序条件将取决于变量“sec”。
long long int cmp(const abc* e1, const abc* e2)
{
if(e1->fir==e2->fir)
return e1->sec-e2->sec;
else
return e1->fir-e2->fir;
}
该代码似乎无法正常工作。正确的方法是什么?