线程 pthread_create 的错误提示,不知为何

project15 2009-09-24 10:56:56
函数

void thread(void);


在main函数里面调用




ret=pthread_create(&id,&attr,(void *)thread,NULL);


编译的时候报错


main.c:56: error: invalid conversion from ‘void*’ to ‘void* (*)(void*)’

main.c:56: error: initializing argument 3 of ‘int pthread_create(pthread_t*, const pthread_attr_t*, void* (*)(void*), void*)’


是什么原因啊?
...全文
343 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
xill 2010-01-19
  • 打赏
  • 举报
回复
up
Z782282738 2009-09-24
  • 打赏
  • 举报
回复
thread函数不对。
jiangxc2004 2009-09-24
  • 打赏
  • 举报
回复
thread的返回值和接收参数类型都不符合pthread_create的要求
yangyunzhao 2009-09-24
  • 打赏
  • 举报
回复
thread函数不对。
应该是void *thread(void *ptr)
pengzhixi 2009-09-24
  • 打赏
  • 举报
回复
pthread_create(&id,&attr,(void *)thread,NULL);
第3个参数类型
w0911h 2009-09-24
  • 打赏
  • 举报
回复
pthread_create(&id,&attr,(void *)&thread,NULL);
第三个参数是函数指针。。。 &thread
whg01 2009-09-24
  • 打赏
  • 举报
回复
你的thread函数是void,不是void*
yutaooo 2009-09-24
  • 打赏
  • 举报
回复

thread 的类型不正确呀。应该是:

void *thread(void *);

这样子的函数。

70,022

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧