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开始的,这点在定义的时候要注意