BCB中编译的动态库,为什么函数导出表中的函数名开头都有一个下划线呢?

acqy 2005-07-29 08:52:43
例如:
extern "C" __declspec(dllexport) int Add2(int x, int y)
{
return x+y;
}

但是我用VS的dumpbin命令查看生成的DLL时,函数表中所有函数前面都有一个下划线。比如上面的函数在导出表中就是“_Add2”,为什么呢?
...全文
229 6 打赏 收藏 举报
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
僵哥 2005-07-30
声明为__stdcall就好了
extern "C" _declspec(dllexport) int _stdcall RegisterDll(PChar File,bool Register)
  • 打赏
  • 举报
回复
xili 2005-07-30
用vc的工具吧, 对准dll做一下,生成一个新的 lib
  • 打赏
  • 举报
回复
acqy 2005-07-29
我LoadLibrary以及GetProcAddress的时候岂不是也要加这个下划线?
  • 打赏
  • 举报
回复
acqy 2005-07-29
有没有办法去掉这个下划线?
  • 打赏
  • 举报
回复
FengSC 2005-07-29
正常正常,这是标准C的语法,是一种约定
  • 打赏
  • 举报
回复
Waiting4you 2005-07-29
加个__stdcall再试试
  • 打赏
  • 举报
回复
发帖
C++ Builder

1.3w+

社区成员

C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
帖子事件
创建了帖子
2005-07-29 08:52
社区公告
暂无公告