Процедура FillChar в Delphi заповнює розділ пам'яті значенням байта або символу-заповнювача.
System unit
procedure FillChar (var Buffer; FillCount : Integer; FillValue : Byte);
Процедура FillChar заповнює розділ пам'яті Buffer тим самим байтом або символом FillValue FillCount разів.
Це використовується переважно для ініціалізації масивів чисел. Це може використовуватися, щоб ініціалізувати записи та рядки, але потрібно використовувати з обережністю, щоб уникнути записування поверх полів довжини. StringOfChar більше підходить для того, щоб заповнити рядки тим самим символом.
Процедура FillChar: Заповнення масиву слова
var
data : array[0..3] of Word;
i : Integer;
begin
// Заповнення Word масиву
ShowMessage('Перед FillChar :');
for i := 0 to 3 do
begin
data[i] := i*5;
ShowMessage(IntToStr(i)+' значення елемента = '+IntToStr(data[i]));
end;
// Тепер заповнюємо масив значенням 1
// Word - 2 байта: 00000001 00000001 hex = 257 dec
FillChar(data, 4*SizeOf(Word), 1);
// І показуємо масив тепер
ShowMessage('После FillChar :');
for i := 0 to 3 do
ShowMessage(IntToStr(i)+' значення елемента = '+IntToStr(data[i]));
end;
Результат
Перед FillChar :
0 значення елемента = 0
1 значення елемента = 5
2 значення елемента = 10
3 значення елемента = 15
Після FillChar :
0 значення елемента = 257
1 значення елемента = 257
2 значення елемента = 257
3 значення елемента = 257
Подібні функції, процедури та команди
GetMem — отримує вказану кількість байтів пам'яті.
SetString — копіює символи з буфера в рядок.
StringOfChar — створює рядок з одного символу, повтореного багато разів.
