有一个项目要求做一个DLL,其中一个函数的声明如下(注:是DELPHI6格式的声明):function read_card(instr:string; var outstr,outstr2:string):integer现在用VC++6编写此DLL,问题有如下几个:
1、VC6用什么类型的变量接收 instr 的字符串。
2、VC6用什么类型的变量或方法可以传出 outstr 的值,而DELPHI6可以直接接收此字符串变量。
3、"var outstr,outstr2:string" 中var是限定 outstr,还是outstr,outstr2都限定。

解决方案 »

  1.   

    1.用CString 或者string或者char[],char *等均可接收字符串。
    2.用CString 或者string或者char[],char *等均可传出字符串。
    3.这个限定可能是限定outstr,这是delphi的语法,可以让董delphi的人去解决。
      

  2.   

    // delphi用PChar传入,VC用char*接受。
      

  3.   

    用CHAR* 等字符串...
    一般跨语言等,不要用CString等MFC类,用标准的字符串比较好多个语言处理