动态调用dll,怎么得到里面全局变量的值?
dll.h:
#define DLL_GLOBAL_EXPORT __declspec(dllexport)
#define DLL_EXPORT extern "C " __declspec(dllexport)
dll.cpp:
DLL_GLOBAL_EXPORT int Global_i; <--------改称Global_i=0;就不提示下边的警告
DLL_EXPORT void ExportFun()
{
Global_i=100; <—————undefined reference to
}
---------------------------------------
1.为什么编译的时候,上边的问题,如果DLL_GLOBAL_EXPORT int Global_i =0;
就不提示
2.怎么在调用他的程序里得到Global_i得值?我返回的都是1,不知道为什么
---------------------------------------
谢谢帮忙
------解决方案--------------------_declspec(dllimport) unsigned char kk;
------解决方案--------------------我当时是用传参数的结构两边传数据的,搭车学习下新方法
------解决方案--------------------用GetProcAddress ( "VarName ")可以拿到变量的地址
警告应该和DLL的组织结构有关,我也不清楚,等高手解答
只知道未初始化的话变量会被放到BSS段去