【发布时间】:2013-08-19 15:17:44
【问题描述】:
以下两个是相同的,但 C99 标准使从 void * 转换为未定义的函数指针。
有人可以解释第二个是如何工作的吗?有点混乱!
int (*fptr)(int);
fptr = (int (*)(int))dlsym(handle, "my_function");
int (*fptr)(int);
*(void **) (&fptr) = dlsym(handle, "my_function");
【问题讨论】:
标签: c shared-libraries function-pointers