abc 구조의 배열에서 두 요소 사이에 정렬 조건은 변수 "sec"에 따라 달라집니다.붙박이를 qsort 함수의 기능을 비교하는 것이 변수 "전나무는"동일한 경우, 그래서 나는 구조에게 나는 아래의 코드를 사용하는 비교 기능에서</p> <pre><code>typedef struct abc{ long long int fir; long long int sec; }abc; </code></pre> <p>을 정렬 C의 붙박이를 qsort 함수를 사용하는 것을 시도하고있다
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;
}
코드가 제대로 작동하지 않는 것 같습니다. 올바른 방법은 무엇입니까?
. 여기서 뭐가 문제 야? –
어떻게 작동하지 않습니까? 전화 코드 또는 완전한 작은 프로그램을 게시 할 수 있습니까? – hmjd
비교 함수를 qsort에 지정된 서명과 일치 시키면 좋은 시작이 될 것입니다. int (* compar) (const void *, const void *)이어야합니다. 플랫폼 및 인수 및 반환 값을 처리하는 방법에 따라 중요하지 않을 수도 있습니다. 그런 다음 다시 할 수 있습니다. –