我使用delphi 2010。我需要用空格而不是空值填充字符数组。我使用了以下代码,但不起作用。
procedure TForm1.FormCreate(Sender: TObject);
var
aCharArray: array[0..9] of Char;
begin
FillChar(aCharArray, sizeof(aCharArray), #32); // doesn't work
FillChar(aCharArray, sizeof(aCharArray), ' '); // doesn't work
Caption := aCharArray;
end;
标题上印着奇怪的十字。在 ansichar 数组中它运行良好。
请告知原因及解决方法。
谢谢。
最佳答案
FillChar
在 Unicode Delphi 中命名错误。它确实应该命名为FillAnsiChar
。因此,您将使用具有序数值 $2020
(又名 U+2020 (DAGGER), †)的 UTF-16 字符填充字符串。 .
您应该使用 StringOfChar
:
Caption := StringOfChar(' ', 10);
关于delphi - 用空格初始化 char 数组(#32)而不是 null(#0),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24466734/