CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  基础类

菜鸟再问:dll传递链表不能成功?(在线等待,请多加赐教!)

楼主13661023811(苯苯)2005-04-02 09:57:08 在 C++ Builder / 基础类 提问

dll档里   定义了一个:  
  struct   my  
  {  
  int     k;  
  struct   my   *Next;  
  };  
  声明是这样的  
  extern   "C"   __declspec(dllexport)   void   __stdcall     GetValue(my   *head);  
   
  void   __stdcall   GetValue(my   *head)  
  {  
        .....  
  }  
  然后在主程序里定义了相同的结构,然后调用:  
  my   *head;//全局变量  
   
  HINSTANCE   ins;  
   
  typedef   void   (__stdcall   *   s)(my*);  
   
  ins   =   LoadLibrary("bstkread.dll");  
  s   sl=(s)GetProcAddress(ins,"GetValue");  
  sl(head);  
   
  不成功,head的值为NULL。  
  问题点数:100、回复次数:7Top

1 楼kingfish(工作很忙,很少来csdn...)回复于 2005-04-02 19:53:37 得分 100

不是dll的问题,是最基本的传值问题  
  如:  
  void   f(char   *p){  
      p   =   new   char[10];  
      strcpy(p,"kingfish");  
  }  
   
  测试:  
      char   *p   =   NULL;  
      f(p);  
      if(p==NULL)   ShowMessage("p   not   changed");Top

2 楼kingfish(工作很忙,很少来csdn...)回复于 2005-04-02 19:58:11 得分 0

可以通过传引用或者return方式解决  
   
  如  
  void   __stdcall   GetValue(my   *&head)  
  {  
  }  
   
  or  
   
  my*   __stdcall   GetValue()  
  {  
      return   p;  
  }  
   
  Top

3 楼13661023811(苯苯)回复于 2005-04-02 20:09:42 得分 0

太感谢了,好感动啊,我先试试!!!Top

4 楼blow_jj(阿俊)回复于 2005-04-02 21:16:13 得分 0

返回一个地址虽然会替使你不安全  
  但是确实可以得到你要的效果  
  Top

5 楼13661023811(苯苯)回复于 2005-04-03 19:00:16 得分 0

"返回一个地址虽然会替使你不安全  
  但是确实可以得到你要的效果"  
   
   
  为什么?我不是很了解,DLL和调用者不是在同一地址空间吗?  
   
  Top

6 楼suny803(惊虹飞雪)回复于 2005-04-03 19:18:36 得分 0

learningTop

7 楼13661023811(苯苯)回复于 2005-04-05 12:21:44 得分 0

自己顶一下,我实在搞不清楚,虽然问题已解决。Top

相关问题

  • ■■■菜鸟提问:vb调用c写的dll,如何传递二维数组、返回两个一维数组?■■■
  • 菜鸟问题:参数传递
  • 菜鸟问题:消息传递?
  • 关于Dll参数传递
  • DLL指针传递问题.
  • asp dll 参数传递
  • 很菜的问题。怎样象dll文件传递数值。在线等待中
  • 菜鸟提问--关于DLL
  • dll的菜鸟问题!!!
  • dll菜鸟级问题

关键词

  • dll
  • null
  • stdcall getvalue
  • 地址
  • head
  • 问题
  • char

得分解答快速导航

  • 帖主:13661023811
  • kingfish

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo