Реферат: Типи даних алгоритмічної мови TURBO Pascal Стандартні функції і оператори роботи з рядками
S2 : string;
S3 : string [50];
Механізм динамічних рядківреалізований в мові Турбо-Паскаль достатньо просто. Для рядкових змінних пам’ять виділяється відповідно максимального значення, а використовується лише частина, яка реально зайнята символами рядка у даний час, тобто для N символів виділяється N+1 байт пам’яті, із яких Nбайт призначено для зберігання символів рядка, а 1 байт – для значення поточної довжини цього рядка:
Елементи рядка нумеруютьсяцілими числами, починаючи з 1. Це іноді використовують для визначення поточної довжини рядка.
Наприклад:
1) Line := ‘ ’; {пустий рядок}
WriteLn (ORD (Line [0] )); {на екрані число 0}
2) Line : =‘ABCD’;
WriteLn (ORD (Line [0])); {на екрані число 4}
Однак, для визначення поточної довжини рядка, як правило, використовують стандартну функцію length , яке повертає ціле значення поточної довжини рядка. Але це ми розглянемо далі.
У разі присвоювання рядковій змінній виразу з довжиною більше ніж максимально допустимо для даної змінної, то символи за межами максимальної довжини не використовуються (вилучаються). Ця ситуація не є помилковою, тому переривання виконання програми у даному випадку не відбувається.
Наприклад:
Var Line : string [4];
Begin
Line:= ‘ дуже довгий рядок’;
WriteLn ( Line );
Таким чином рядки можуть змінювати свою довжину.
7. Основні операції над рядковими даними
Над рядковими даними виконують такі операції :
1.присвоювання (:=);
2.ввод ( Read );
3.вивод(Write );
4.порівняння (відношення);
5.поєднання (зчеплення, конкатенації, - ,+).
Перші три операції виконуються стандартно, без особливостей. Тому розглянемо дві останні операції.
Операція конкатенації.
Використовується для зчеплення декількох рядків в один, при чому довжина результуючого рядка не повинна перевищувати 255 символів (або вказану довжину N). Інакше останні символи будуть відкинуті.
Приклади:
1) st := ‘ a ’+’ b ’;