xt_double_cmp(3)

NAME
xt_double_cmp() - Compare two doubles for sort(3), bsearch(3), etc.

LIBRARY
#include <xtend/math.h>
-lxtend

SYNOPSIS
int     xt_double_cmp(const double *n1, const double *n2)

ARGUMENTS
n1, n2  Pointers to two double values

DESCRIPTION
This is a function that compares two doubles as a service to polymorphic functions such as qsort(3), bsearch(3), etc. The address of xt_double_cmp() is passed as an argument to perform the data type specific comparison on behalf of the sort of search function.

RETURN VALUES
A value > 0 if *n1 is greater than *n2 A value < 0 if *n1 is less than *n2 0 if the values are equal

EXAMPLES
double  list[LIST_SIZE];
// sizeof(*list) will continue to work if we change the data type
// We'll still need to change the cmp function, though
qsort(list, LIST_SIZE, sizeof(*list),
      (int (*)(const void *, const void *))xt_double_cmp);

SEE ALSO
qsort(3), heapsort(3), mergesort(3), bsearch(3)