Про величину, значением которой является последовательность (цепочка) символов, (т.е. элементов типа char) говорят, что она имеет строковый или литерный тип (тип string).
Строки могут выводиться стандартными процедурами Write и Writeln и вводиться стандартной процедурой Readln.
В программе значение литерной величины записываются в виде строки символов, заключенной в одинарные кавычки.
Например:
var
s, p,d, u: string;
begin
Readln(u);
s := 'zxcxg fffgrss f';
p:='информатика';
. . .
if d <> 'мир' then
. . .
while u = 'stop' do
. . .
Write( d)
end.
При подсчете фактической длины строки учитываются все входящие в нее символы, в том числе и пробелы.
Длина литерной величины может меняться (одновременно с изменением ее значения) в процессе выполнения программы.
Строка может не содержать ни одного символа (обозначается '', т.е. ноль символов между кавычками). В этом случае ее длина будет равна нулю ( length('') = 0).
Строка ' ', состоящая из одного пробела, имеет длину 1 ( length(' ') = 1) и отличается от строки ''.
Например, результатом команды присваивания
s :=
'Это ' + '-' + '
строка!';
будет запись в ячейку s цепочки "Это - строка! "
Ниже речь будет идти о функции Concat, действие которой аналогично рассматриваемой операции.
Обратите внимание на экстремальные случаи: пустые строки, превышение длины строки и т.п.