【发布时间】:2010-05-12 08:08:15
【问题描述】:
我的功能有问题,不知道如何解决,这是我的代码:
ListResult result=listFind(currentLines, compareBasicLines, &linePrototype); <-here problem
比较指向函数的BasicLines指针
int compareBasicLines(ptrLine line1, ptrLine line2){
COMPARE_NUMBER_STRINGS(line1, line2);
}
COMPARE_NUMBER_STRINGS(line1, line2); 在另一个文件中定义
#define COMPARE_NUMBER_STRINGS(var1, var2) \
if(var1 == NULL || var2 == NULL){ \
return 0; \
} \
return strcmp(var1->strNumber, var2->strNumber);
提前感谢大家
这是我的,我的作业是关于 ADT,所以我不知道我在 listFind 里面到底有什么
/**
* Searches the list for an element fitting the criteria starting from the
* current element.
* Note that you need to call listGetFirst if you wish to search from the start
* of the list. The search starts from the current element.
* @param list
* The list to search in
* @param compare
* Comparison function to decide if an element in the last is equal to the
* target elemnt. This function should return 0 for equal elements
* @param target
* A target element to compare with each element in the list.
* @return
* LIST_NULL_ARGUMENT if list or compare are NULL
* LIST_INVALID_CURRENT if the current pointer of the list is in invalid state
* LIST_NO_SUCH_ELEMENT if no element was found from the current element until
* the end of the list
* LIST_SUCCESS an element was found and the current pointer of the list is now
* set to this element
*
*/
ListResult listFind(List list, CompareListElements compare, ListElement target);
还有一个定义
typedef int (*CompareListElements)(ListElement, ListElement);
typedef void* ListElement;
【问题讨论】:
-
抱歉,您需要更具体一些。问题是什么?编译失败了吗?链接失败?错误信息是什么?
-
从不兼容的指针传递'listFind'的arg2
标签: c eclipse warnings compiler-warnings