lfind()函数用于在给定区域内从头到尾进行线性搜索。
lfind()函数 语法
void*lfind(void*key,void*district,int*n,int m,int(*fc)());
lfind()函数的语法参数说明如表所示。
lfind()函数的返回值:若找到关键数据,则返回找到的该元素的地址;否则返回NULL。
lfind()函数 示例
本示例使用lfind函数实现在数组a中线性搜索元素68,其具体代码如下所示:
#include<stdlib.h>
#include<stdio.h>
int compare(int*x,int*y)/*自定义比较函数*/
{
return(*x-*y);
}
int main(void)
{
int a[5]={25,14,29,68,55};/*初始化数组*/
size_t n=5;/*定义变量*/
int key;
int*result;
key=68;
result=lfind(&key,a,&n,sizeof(int),(int(*)(const void*,const void*))compare);/*实现线性搜索*/
if(result)
printf("Number%d is found ",key);/*输出结果*/
else
printf("Number%d is not found ",key);
return 0;
}
运行结果如图所示。