我编写了这个函数,它使用二分查找来查找结构数组中的特定值。为什么不编译?二进制搜索结构数组中的特定值
我得到这个错误:
prog.c:224: error: subscripted value is neither array nor pointer prog.c:226: error: subscripted value is neither array nor pointer
这是函数:
int FieldSearch(Field *pArr, int size, int val)
{
int low=0,high=size-1, middle;
while (low <= high)
{
middle = (low + high)/2;
if (val == pArr->Id[middle])
return middle;
else if (val < pArr->Id[middle])
high = middle -1;
else
low = middle +1;
}
return NOT_FOUND;
}
这是场结构:
typedef struct field
{
char Id;
Coordinates location;
int area;
int price;
} Field;
也许原型是不对的.. 。
这是什么语言? C? – 2011-06-04 09:09:24
Id是什么类型?\ – 2011-06-04 09:09:56
id是整数i是指%d,是的这是c ... – talmordaniel 2011-06-04 09:11:03