[ Next Article |
Previous Article |
Book Contents |
Library Home |
Legal |
Search ]
Base Operating System and Extensions Technical Reference, Volume 2
qsort Subroutine
Purpose
Sorts a table of data in place.
Library
Standard C Library (libc.a)
Syntax
#include <stdlib.h>
void qsort (Base, NumberOfElements, Size, ComparisonPointer)
void *Base;
size_t NumberOfElements, Size;
int (*ComparisonPointer)(const void*, const void*);
Description
The qsort subroutine sorts a table of data in place. It uses the quicker-sort algorithm.
Parameters
Base |
Points to the element at the base of the table. |
NumberOfElements |
Specifies the number of elements in the table. |
Size |
Specifies the size of each element. |
ComparisonPointer |
Points to the comparison function, which is passed two parameters that point to the objects being compared.
The qsort subroutine sorts the array in ascending order according to the comparison function. |
Return Values
The comparison function compares its parameters and returns a value as follows:
- If the first parameter is less than the second parameter, the ComparisonPointer parameter returns a value less than 0.
- If the first parameter is equal to the second parameter, the ComparisonPointer parameter returns 0.
- If the first parameter is greater than the second parameter, the ComparisonPointer parameter returns a value greater than 0.
Because the comparison function need not compare every byte, the elements can contain arbitrary data in addition to the values being compared.
Note: If two items are the same when compared, their order in the output of this subroutine is unpredictable.
The pointer to the base of the table should be of type pointer-to-element, and cast to type pointer-to-character.
Implementation Specifics
This subroutine is part of Base Operating System (BOS) Runtime.
Related Information
The bsearch subroutine, lsearch subroutine.
Searching and Sorting Example Program, Subroutines Overview in AIX Version 4.3 General Programming Concepts: Writing and Debugging Programs.
[ Next Article |
Previous Article |
Book Contents |
Library Home |
Legal |
Search ]