敲不对代码的小奶酪
2021-09-08 16:34
采纳率: 100%
浏览 36

compare在c语言中使用语言定义吗?

这几天开始学习数据结构的顺序表,书中定义了一个操作:
int LocateElem(SqList L,ElemType e,Status(*compare)(ElemType,ElemType))

但我不知道compare是什么函数,如果不是库函数,需要自己定义么?在网上查阅了一些库函数大全也没找到,望高手指教。
谢谢!!

  • 收藏

3条回答 默认 最新

  • 已采纳

    C语言只有字符数组有库函数strcmp函数进行比较,没有compare函数,这个是自定义的

    已采纳该答案
    打赏 评论
  • CSDN专家-link 2021-09-08 16:43

    这个就像一些回调函数一样,只是定义了函数的接口形式,具体实现需要你提供一个实现函数,符合接口形式的参数和返回值要求
    比如列表有排序功能,但这个排序函数要你自己来实现,默认的排序可能不是你想要的。
    这里的compare是一个意思,参数是两个元素,这两个元素的排序规则,由你提供的函数实现来完成

    1 打赏 评论
  • baidu_30233079 2021-09-08 16:38

    这个要自己实现的,那个只是参数,告诉你要传一个status function(ElemType,ElemType)这样一个函数给它,这个函数真正实现比较

    1 打赏 评论

相关推荐 更多相似问题