xref: /original-bsd/lib/libc/stdlib/bsearch.3 (revision 208c3823)
Copyright (c) 1989 The Regents of the University of California.
All rights reserved.

Redistribution and use in source and binary forms are permitted
provided that the above copyright notice and this paragraph are
duplicated in all such forms and that any documentation,
advertising materials, and other materials related to such
distribution and use acknowledge that the software was developed
by the University of California, Berkeley. The name of the
University may not be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

@(#)bsearch.3 5.1 (Berkeley) 10/14/89

BSEARCH 3 ""
C 7
NAME
bsearch - binary search of a sorted table
SYNOPSIS
#include <stdlib.h>
char *
bsearch(const void *key, const void *base,
size_t nmemb, size_t size,
int (*compar) (const void *, const void *));
DESCRIPTION
The bsearch function searches an array of nmemb objects, the inital member of which is pointed to by base , for a member that matches the object pointed to by key . The size of each member of the array is specified by size .

The contents of the array should be in ascending sorted order according to the comparison function referenced by compar . Compar is called with two arguments that point to the key object and to an array member, in that order, and must return an integer less than, equal to, or greater than zero if the key object is considered, respectively, to be less than, equal to, or to greater than the array member.

The bsearch function returns a pointer to a matching member of the array, or a null pointer if no match is found. If two members compare as equal, which member is matched is unspecified.

"SEE ALSO"
hsearch(3), lsearch(3), qsort(3), tsearch(3)
STANDARDS
The bsearch function is ANSI C compatible.