当前位置: 首页 > 工具软件 > nPth > 使用案例 >

linux 查看动态库基址,Linux NPTH库解析

陈畅
2023-12-01

int main()

{

void *pHandle;

void (*pFunc)();                                                    //  指向函数的指针

int *p;

pHandle = dlopen("./d1.so", RTLD_NOW);                  //  打开动态库

if(!pHandle){

printf("Can't find d1.so \n");

exit(1);

}

pFunc = (void (*)())dlsym(pHandle, "print");                //  获取库函数 print 的地址

if(pFunc)

pFunc();

else

printf("Can't find function print\n");

p = (int *)dlsym(pHandle, "p");                                      //  获取库变量 p 的地址

if(p)

printf("p = %d\n", *p);

else

printf("Can't find int p\n");

dlclose(pHandle);                                                                //  关闭动态库

return 0;

}

 类似资料: