从bsearch和lfind确定索引?

我试图在lfind和bsearch返回指向它找到的元素的指针之后获取数组中元素的索引。 到目前为止我有这个:

(char *) (found - cv->baseAddress); 

找到的是函数找到的地址,基址是元素0的地址。但是,编译器给出了这个错误:

cvector.c:150:28:警告:减法中使用的’void *’类型的指针cvector.c:150:4:warning:return从指针生成整数而没有强制转换

我该怎么办?

您必须将返回的指针类型转换为正确的类型。 然后,您还需要将获得的偏移量除以数组中对象的大小以获取索引。