将参数传递给C ++共享库

时间:2013-06-27 13:18:18

标签: c++ linux shared-libraries visibility

我想将参数传递给C ++共享库lib.so form loader.exe。

抱歉,请更新问题。

共享库如:

int count(){
         int num = 9;
         int result = 0;
         for ( int i = 0; i < num; i++ ){
                 result ++;
         }
         return result;
}

在loader.exe中,使用dlopen加载它。

void *handler = dlopen("lib.so", RTLD_LAZY);

我想从loader.exe更改num的值。当我调用函数count()时,它可以给我新的结果。

我该怎么办?

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以在加载程序中定义全局变量num(设置为所需的值)并更改

     int num = 9;

     extern int num;