我用FillChar()函数时,发现两个版本中的Char不一样。

在delphi7中

procedure TForm2.Button1Click(Sender: TObject);
var
s: array[0..3] of Char;
i: integer;
begin
FillChar(s, SizeOf(s), '1'); // 填充字符
ShowMessage(s); // 1111
end;

在XE中同样的代码,s却是这样:

Delphi7中的Char和XE中的Char-LMLPHP 

把Char改成AnsiChar 就可以了

可能是应为delphi7中Char是单字节,而XE中Char是双字节的原因吧。

05-15 11:02