比如我想写一个函数,想看一个给定的数组中是否包含某个元素,如果包含该元素,返回该元素的索引,否则返回-1.
问题是怎么写这样一个函数,可以适用于不同的数据类型。 抽象数据类型先撇开不讲,怎么写这样一个函数,可以适用于 int, char, float 等这些基本的数据类型。
// value 是要查询的元素, array是数组, len是数组长度
int inArray(void *value, void *array, int len)
{
int i;
for(i=0; i<len; i++)
if(*value == array[i])
return i;
return -1;
}
我写了这样一个函数,但是编译通不过。请高手指点一下,有什么好的方法?