CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
lfind
lfind
Функция Выполняет линейный поиск. Синтаксис #include<stdlib.h> void *lfind(const void *key, const void *base, size_t *num, size_t width, int(*fcmp)(const void *,const void *)); Файл, содержащий stdlib.h прототип Описание lfind производит линейный поиск по значению key в массиве последовательных записей. Она использует определенную пользователем программу сравнения (fcmp). Массив описывается как как содержащий *num записей, каждая шириной width байт. base указывает начало массива. Возвращаемое lfind возвращает адрес первого, совпадающего с ис- значение комым, элемента. Если совпаданий не обнаружено, то lfind возвращает NULL. Подпрограмма сравнения должна возвращать 0 если *elem1 == *elem2, и ненулевое значение в противном случае. (elem1 и elem2 это ее параметры). Переносимость lfind уникальна для DOS. Смотрите также bsearch, lsearch, qsort. Пример: #pragma warn -rpt #include<stdio.h> #include<stdlib.h> int compare(int *x,int *y) { return(*x-*y); } int main(void) { int array[5] = {35,87,46,99,12}; int key; int *result; key = 99; result = lfind(&key,array,5,sizeof(int),compare); if(result) printf("Число %d найдено",key); else printf("Число %d ненайдено",key); return 0; }