Реферат: Оператори алгоритмічної мови Паскаль Стандартні функції і оператори роботи з рядками
2) Для символьних масивів допускають операцію "+" – конкатенації (зчеплення, поєднання). Смисл операції полягає у формуванні нового символьного масиву, кількість елементів якого дорівнює сумі розмірів масивів – операндів, а значення елементів – елементи масивів, які розміщюються послідовно один за одним.
Приклад:
var S1 : array [1..8] of char;
S2 : array [1..5] of char;
begin
S1 := ’рядковий’;
S2 := ’масив’;
writeln (S1 +’ ’+S2 ); {результат на екрані: Рядковий масив}
end.
!Особливість:!
1. в операторах присвоювання рядків символьним масивам необхідна точна відповідність довжини рядків і розмірів масивів;
2. операція конкатенації для символьних масивів не допускається у правій частині присвоювання. Наприклад:
S := S1 +’ ’+S2 ; {помилка}
У таких випадках необхідно використовувати рядки , тобто рядкові типи даних.
4. Визначення рядкового типу даних
Рядкові типи даних є одним з розширень мови Паскаль, які найбільш використовуються. Рядковий тип узагальнює поняття символьних масивів, дозволяє динамічно змінювати довжину рядка.
При використанні у виразах рядок обмежується апострофами. Кількість символів в рядку (довжина рядка) може динамічно змінюватись від 0 до 255.
Для визначення рядкових даних використовується ідентифікатор STRING, за яким у квадратних дужках вказується максимальна довжина рядка. Якщо значення не вказане, то по замовченню довжина рядка встановлюється 255 байт.
Приклад:
Line : string [80];
Line1 : string ;
Line2 : string [255].
В приведеному прикладі змінна Line може мати будь-яку послідовність символів (кожен з яких має стандартний тип char) довільної довжини в межах від 0 до 80 символів; Line1 і Line2 – від 0 до 255 символів.
Таким чином, важливіша різниця між рядками і символьними масивами, що рядки можуть динамічно змінювати свою довжину.
Змінну рядкового типу визначають у розділі опису типів, або безпосередньо у розділі опису змінних.
Рядкові дані також можна використовувати у програмі як константу.
Формат:
1. type
< ім’я типа > = string [max довжина рядка];