c - C 中不兼容的指针类型 || 无效(*)(无效*)
问题描述
我有两个函数,控制台说指针不兼容
void printList(tList, void(void*))
我传递的函数是
void printUser(tUser*);
printList(user->friends, printUser);
有人能帮帮我吗?我不明白那有什么问题。
解决方案
您需要一个将 avoid *
作为参数而不是 atUser *
作为参数的函数。将您的更改void printUser(tUser*)
为void printUser(void*)
,然后在 的定义中printUser
,您可以将参数转换为它需要的类型:
void printUser(void *arg) {
tUser *casted_arg = (tUser *)arg;
[...]
}
推荐阅读
- c++ - 如果满足所需的时间复杂度,为什么我的代码会超时?
- mysql - 如何获得mysql中组合在一起的两列的计数之间的比率(排行榜杀死/死亡比率)
- common-lisp - Quickload 使用 Roswell 加载本地项目失败
- python - 不在熊猫数据框中
- android - java.io.IOException:Android Firebase 中的 FIS_AUTH_ERROR 但调试模式正常
- git - git local 无法统计权限被拒绝
- javascript - Javascript,无法动态更改产品页面
- excel - Excel VBA 宏错误:过程太大
- javascript - 热图 yAxis 更改未按预期工作
- c++ - 以最少的等待时间迭代数组 2 种方式(动态编程)