小弟我不懂Delphi的东西,哪位高手帮我翻译成C语言type
PBArray = ^TBArray;
TBArray = array[0..pred(High(Integer))] of Byte;
var Move(PBArray(Buf)^[SizeAtEnd], OBuffer^, LeftOver);
PBArray = ^TBArray;
TBArray = array[0..pred(High(Integer))] of Byte;
var Move(PBArray(Buf)^[SizeAtEnd], OBuffer^, LeftOver);
type 相当于c里的typedef
typedef BYTE TBArray[XXXX]; (XXXX用sizeof自己算,就是最大数-1)
typedef TBArray * PBArray;那个语句是把
buf^[i]后移动LeftOver个单位到OBuffer[0],不是#OBuffer[0].这两个地址搞清楚了,buf^[i]和buf[i]的相差太大了。
OBuffer^和OBuffer也是截然不同的。
你去看看Delphi的书就知道了,
长时间没用C语言了,内存复制用什么函数搞不清了,好象是MemMove吧。