风无影:
【技术问题】关于Delphi指针参数定义的问题。
[阅读: 1070] 2006-01-14 07:44:06
#define PK7600_MAX_PULSES 13
/////////////////////////////////////////////////////////////////////
///
// PK7600GetAvailPulses( int card, float *pulsewidths )
//
// Return Value:
// If successful this routine will return 0, failure is a negative value.
//
// Parameters:
// int card: The id of the 7600 card
// float *pulsewidths: Point to result of operation is an array of
// all pulsewidths
//
// Description:
// Use the routine to fill in USER array of all available pulsewidths
//
PK_API_(int) PK7600GetAvailPulses( int card,
float *pulsewidths );
这是手册描述:
我用Delphi调用C++即上面的函数,申明如下:
function PK7600GetAvailPulses(card:integer;var pulsewidths:pdouble):integer;stdcall;external 'PK76OTDR.DLL' name '_PK7600GetAvailPulses@8';
程序调用:
const
PK7600_MAX_RANGES = 10;
var
pPulses : pdouble;
s2:ineger;
begin
GetMem(pPulses,sizeof(double)*PK7600_MAX_PULSES);
s2:=PK7600GetAvailPulses(mcard,pPulses);
FreeMem(pPulses);
end;
不知道为什么会有错误,请大家帮忙看看,多谢。
CNDEV继续着,怎么也没人广播一下啊?