Delphi2010下的FillChar

在delphi2010中,因为unicode的原因,FillChar使用方法已经和老版delphi大不相同了。

如果想用某一个字符(或汉字)填充内存 buf: array[0..1023] of Char; 就不能这样使用 FillChar(buf, size, 65); {填充字母 A}

这样使用是错误的,应该这样做:StrPCopy(Buf, StringOfChar('A',Length(Buf)));

如果是填充#0,可以使用 FillChar(buf, SizeOf(Buf), #0); 

另外:buf的大小,只需使用SizeOf(Buf)或bytelength(buf),没必要用这么复杂的,拐了好几个弯 size := Length(buf) * SizeOf(Char);

posted @ 2015-09-02 14:53  tc310  阅读(501)  评论(0编辑  收藏  举报