반응형
void qsort( void *base, size_t number, size_t width, int (__cdecl *compare )(const void *, const void *) ); |
qsort 함수는 빠른 정렬을 수행합니다.
base
대상 배열의 시작 부분입니다.
number
배열의 크기입니다.
width
요소 크기(바이트)입니다.
compare
두 배열 요소를 비교하여 해당 관계를 지정하는 값을 반환하는 사용자가 제공한 루틴에 대한 포인터입니다.
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
int compare(const void* arg1, const void* arg2);
int main(int argc, char** argv)
{
int i;
char* str[] = { "every", "favor", "boy", "good", "deserve" };
int size = 5;
/* Sort remaining args using Quicksort algorithm: */
qsort((void*)str, 5, sizeof(char*), compare);
/* Output sorted list: */
for (i = 0; i < size; ++i)
printf(" %s", str[i]);
printf("\n");
}
int compare(const void* arg1, const void* arg2)
{
/* Compare all of both strings: */
return _stricmp(*(char**)arg1, *(char**)arg2);
}
빠른 정렬을 수행합니다.
(Output)
반응형
'C_C++ > C_라이브러리_함수' 카테고리의 다른 글
(C언어) strstr: 문자열에서 특정 문자열을 검색한다 (0) | 2022.11.21 |
---|---|
(C언어) 파일 복사: fgets(), fputs() 함수를 이용한 파일 복사 (0) | 2022.11.13 |
(C언어) sqrt() 함수: 양의 제곱근을 구한다 (0) | 2022.11.07 |
(C언어) pow, powl: x의 y제곱을 계산한다 (0) | 2022.11.06 |
(C언어) rand: 난수를 생성한다 (1) | 2022.10.26 |