bsearch
Функция FSF.bsearch осуществляет двоичный поиск в массиве.
void* WINAPI bsearch(
const void *key,
const void *base,
size_t nelem,
size_t width,
int (__cdecl *fcmp)(const void *, const void *)
);
Параметры
key
Указатель на элемент, который хотим найти.
base
Указатель на начало данных для сортировки.
Массив данных должен быть отсортирован.
nelem
Количество сортируемых данных.
width
Размер одного элемента сортируемых данных.
fcmp
Функция сравнения двух элементов. В процессе сортировки
вызывается каждый раз, когда необходимо сравнить пару элементов данных.
Функция сравнения
fcmp должна иметь C-декларацию (_USERENTRY или _cdecl).
fcmp получает два аргумента -
elem1 и
elem2,
которые являются указателями на данные, и возвращает результат:
| *elem1 < *elem2 | - fcmp возвращает целое меньше 0 |
| *elem1 == *elem2 | - fcmp возвращает 0 |
| *elem1 > *elem2 | - fcmp возвращает целое больше 0 |
Возвращаемое значение
bsearch возвращает адрес первого вхождения в таблице base,
которое соответствует ключу поиска key.
Если значение не найдено, то функция возвращает 0.
Примечание
Более подробно о функции см. справочное руководство по языку C/C++.
Пример
Смотрите также: