xt_float_cmp(3)

NAME
xt_float_cmp() - Compare two floats for sort(3), bsearch(3), etc.

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

SYNOPSIS
int     xt_float_cmp(const float *n1, const float *n2)

ARGUMENTS
n1, n2  Pointers to two float values

DESCRIPTION
This is a function that compares two floats as a service to polymorphic functions such as qsort(3), bsearch(3), etc. The address of xt_float_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
float  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_float_cmp);

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