나는 문자열 배열을 정렬를 qsort를 사용하여 몇 가지 기본적인 코드를 만들려고하지만, GDB에 따라, qsort가에 충돌 :기초를 qsort는
#include <string.h>
#include <stdlib.h>
static int pcmp(const void * a, const void * b)
{
return strcmp(* (char * const *) a, * (char * const *) b);
}
int main()
{
char pn[10][256];
memset(pn, 0, sizeof(char) * 10 * 256);
strcpy(pn[0], "hello");
strcpy(pn[1], "TEST");
strcpy(pn[2], "abc");
strcpy(pn[3], "000000");
qsort(pn, 4, sizeof (char *), pcmp);
}
에 대한 호출을 변경할 수 있습니다, 정적 pcmp 만들기의 목적은 무엇인가? –
@DominikC 그에게 물어보십시오. 나는 strcmp를 던지기에 충분하다고 느낍니다. – BLUEPIXY
정적 인 이유는 "man qsort"를 할 때 얻는 예제에서 어떻게 이루어 졌는지입니다. 나는 그것을 복사/붙여 넣기했다. – user2316370