为了账号安全,请及时绑定邮箱和手机立即绑定

为什么不使用链接库时是好用的?请问该怎么修改错误

为什么不使用链接库时是好用的?请问该怎么修改错误

湖上湖 2022-06-09 14:10:39
建了个链接库,声明了void (*function)(int *a);然后function=dlsym(xlib,"function");然后怎么在pthread_create中调用这个function函数?填了好几种方式都出现段错误还有void (*function)(int *);写成void* function(int *),function=dlsym(xlib,"function");这句就会出错,这两个有什么区别?我想在pthread_create中调用function,写成function,(void *)function都不行,出现段错误。但是如果不使用链接库时是好用的.
查看完整描述

3 回答

?
阿波罗的战车

TA贡献1862条经验 获得超6个赞

原型定义
int pthread_create(pthread_t *restrict tidp,
const pthread_attr_t *restrict attr,
void *(*start_rtn)(void),
void *restrict arg);
第一个参数为指向线程标识符的指针。
第二个参数用来设置线程属性。
第三个参数是线程运行函数的起始地址。
最后一个参数是运行函数的参数。
这样子懂了吧?


查看完整回答
反对 回复 2022-06-14
?
GCT1015

TA贡献1827条经验 获得超4个赞

void* (function)(argument*) 是一个返回值为void型的函数指针
void* function(argument*)是一个返回值为void 的函数
概念不同

查看完整回答
反对 回复 2022-06-14
?
大话西游666

TA贡献1817条经验 获得超14个赞

e=sym('13')
A=35^e
C=mod(A,2537)

查看完整回答
反对 回复 2022-06-14
  • 3 回答
  • 0 关注
  • 107 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信