C标准库 lsearch函数

lsearch()函数用于在给定区域内从头到尾进行线性搜索。

lsearch()函数 语法

void*lsearch(const void*key,void*district,size_t*n,size_t m,int(*fc)(const void*,const void*));

lsearch()函数的语法参数说明如表所示。

lsearch()函数 语法

lsearch()函数的返回值:若找到关键数据,则返回找到的元素的地址;若所找数据不在查找区域,则将此数据加入到查找区域,再把加入后的地址返回。

lsearch()函数 示例

本示例使用lsearch函数实现在数组a中线性搜索元素27,并将新元素加入到数组中。其具体代码如下所示:

#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=27;
     result=lsearch(&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;
}

运行结果如图所示。

lsearch()函数 示例

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程