BSEARCH(3)

名前
bsearch - ソートされた配列を二分木検索 (binary search) する

書式
#include <stdlib.h>

void *bsearch(const void *key, const void *base, size_t nmemb,
    size_t size, int (*compar)(const void *, const void *));

説明
bsearch() 関数は nmemb 個のオブジェクトからなる配列を検索 する。配列の最初のメンバーへのポインタは base によって与える。 ポインタ key で参照されるオブジェクトと一致するメンバーが返される。 配列中の各々のメンバーのサイズは size によって指定する。

配列の内容は比較関数 compar に基づき、昇順にソートされていなけれ ばならない。 compar ルーチンは二つの引数を取る関数で、一つ 目に key へのポインタ、次に配列のメンバーへのポインタを取る。 この順に指定したとき、 key が配列メンバーより小さいときには 負の整数を、大きいときには正の整数を、一致したときには 0 を、それぞれ compar は返さなければならない。

返り値
bsearch() 関数は、配列のメンバーのうち、一致したものへのポインタを 返す。見つからなかったときは NULL を返す。 key と一致したメンバーが 複数あるとき、そのうちのどのメンバーが返されるかはわからない。

準拠
SVID 3, BSD 4.3, ISO 9899

関連項目
qsort(3)