首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

delphi调用C++BUILDER编写的DLL时这个函数调用()

2012-03-13 
delphi调用C++BUILDER编写的DLL时这个函数调用(在线等)?typedefstructTag_Result{charcontent[CHARNUM_MAX

delphi调用C++BUILDER编写的DLL时这个函数调用(在线等)?
typedef   struct   Tag_Result   {
  char   content[CHARNUM_MAX];
  char   type[CHARNUM_MAX];
}Result;

bool   test(char*   FileName,Result   &testResult,float   &a,float   b)

testResult是一个输出参数
&testResult是一个内存地址,这个在DELPHI中怎么定义??????????


[解决办法]
type
PTag_Result = ^Tag_Result;
Tag_Result = record
content: array[0..CHARNUM_MAX] of Char;
type: array[0..CHARNUM_MAX] of Char;
end;

function test(FileName: PChar; testResult: PTag_Result; var a, b: single): boolean;

两边都要用 stdcall 定义接口。
[解决办法]
TTag_Result = record
content: array[0..CHARNUM_MAX - 1] of char;
vtype: array [0..CHARNUM_MAX - 1] of char;
end;
function test(FileName: PChar;var testResult: TTag_Result; var a: Double; b: Double): Boolean; stdcall;

C的数组下标是从0开始的,这点在定义的时候要注意

热点排行