在Delphi中,SizeOf(array)是如何实现的?
小弟对Delphi不熟悉,但是现在有一个用Delphi写的DLL,现在需要用C来调用这个DLL。
在此DLL中有一个export函数的声明是这样的:
type // Type of plugin's functions
TFT0Command = function (const Header : array of byte;
const rwData : byte;
var DATA : array of byte;
wasRW : PWord) : LongInt;
stdcall;
我用C语言来调用这函数的时候,函数中获得Header的长度不正确。
我想知道,在Delphi中是如何来确定数组的长度。
不要告诉我用SizeOf(array),Low(array),High(array)这些函数,我需要知道这些函数实现的原理。
例如,在C语言中,如果要将一个数组作为参数来传递到一个函数中,需要同时将数组的长度也送到函数中去。但是在Delphi中并没有将数组的长度送过去,在函数中它是怎么获得数组的长度呢?