0

我有我正在尝试编写的代码,我有一个 void 函数,信息。

void info(char *,char *);

这个,我试图从我的主函数中调用一个单独的文件。我想使用 dlopen 打开一个 so 文件。我将如何调用该函数:信息。从我的其他文件?

我正在尝试使用

info("testing: ","Success");

我的 info 函数出现未定义的引用错误。

4

1 回答 1

1

通常的路径是这样的:

/* Set up a typedef for the function pointer to make the code nicer */
tyepdef void(*Info_ptr)(char*, char*);
/* Get the function, lib must be the dlopened library.*/
Info_ptr info;
info = (Info_ptr)dlsym( lib, "info");
/* Use the function pointer */     
(*info)("testing: ", "Success");

在这里看一看:http: //tldp.org/HOWTO/html_single/C++-dlopen/

于 2011-08-29T01:10:10.997 回答