动态库手动链接
使用dlopen可以在程序指定位置调用指定函数。
打开一个库文件:
返回值时一个句柄
参数一指定库文件名,
参数二指定方式,RTLD_LAZY用到的时候打开,RTLD_NOW立即打开
void *dlopen(const char *filename, int flag);
指定使用那一个函数:
参数一是dlopen的返回值。
参数二是函数名,
返回函数的地址。
void *dlsym(void *handle, const char *symbol);
关闭打开的文件句柄:
int dlclose(void *handle);
一般使用软链接库名,可以更改库的内容,从而不用更改源程序,就改变程序的结果,适用于服务器更新等情况。