1

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

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

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

cvector.c:150:28: 警告: 'void *' 类型的指针用于减法 cvector.c:150:4: 警告: return 从指针中生成整数而不进行强制转换

我该怎么办?

4

1 回答 1

2

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

于 2013-04-25T09:57:05.113 回答