跳转到内容

bsearch:二分查找

#include <stdlib.h>
void *bsearch(const void *key, const void *base, size_t nmemb, size_t size, int (*compar)(const void *, const void *));
```### 描述
bsearch 使用二分查找法在从 base 开始的数组中搜索与 key 匹配的任何元素。nmemb 是数组的元素个数;size 是每个元素的大小。
数组必须按照比较函数 compar(作为 bsearch 的最后一个参数提供)的规则以升序排列。
您必须定义比较函数 (*compar) 使其具有两个参数;如果第一个参数小于第二个参数,其结果必须为负数;如果两个参数匹配,结果必须为零;如果第一个参数大于第二个参数,结果必须为正数(其中“小于”和“大于”是指适用于任意顺序的含义)。### 返回值
返回指向数组中与 key 匹配的元素的指针。如果有多个匹配元素,结果可能指向其中任意一个。
---
**权威来源**: BUSMASTER DITA help source `bsearch.dita`, compiled into `BUSMASTER.CHM` with the application.