Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Поняття рядка та оголошення змінних рядкового типу




Рядки

Рядок – скінченна послідовність символів.

У тексті програми послідовність символів, що є рядком, міститься в одинарні лапки.

Типи рядків які використовуються в ОР надані в таблиці

Тип рядка Максимальна довжина
ShortString 255 байт
String 255 байт/ 2 Гб
AnsiString 2Гб
WideString 2Гб

Значення типу ShortString – це так звані короткі рядки, довжина яких не перевищує 255 символів.

Обсяг пам’яті, що виділяється для збереження значення рядкової змінної, буде на один байт більшим від вказаної в оголошення загальної довжини рядка.

Кожний символ у рядку займає 1 байт.

Кожен байт має свій порядковий номер.

Найперший байт має номер, рівний 0 і містить символ, код якого відповідає довжині рядка.

При виведенні рядка користувач не побачить цього символу, але в програмі можна прочитати або змінити його значення.

Нульовий символ рядка це не число а символ, і тому для отримання числового значення довжини рядка слід застосовувати вбудовану функцію ord, а для запису довжини – вбудовану функцію chr.

Також як тип короткого рядка можливо використовувати тип String.

Тип String інтерпретується компілятором ОР по різному, в залежності від значення директиви {$H}. Якщо вона увімкнена – {$H+} – то тип String інтерпретується як AnsiString, якщо ні – {$H–} – то як ShortString. Тип String був першим рядковім типом в ТР. Первісно цей тип був реалізований як короткий рядок.

Короткі рядки розташовуються в пам’яті комп’ютера до початку виконання програми (статично). AnsiString, WideString – представляють собою динамічно розташовані в пам’яті комп’ютера рядки. Надалі ми будемо розглядати тільки короткі рядки.

Інструкція оголошення

var имя1: String;

имя2: String[довжина];

имя1: ShortString;

Наприклад:

var stroka: String[30];

stroka1: String[255]; //Еквівалентно ShortString

name: String[15];

name1: ShortString;

 

Рядок фактично є масивом символів.

Одна з характеристик масиву – це кількість його елементів. Але рядок має два різновиди довжини:

ü загальна довжина рядка, що характеризує розмір оперативної пам'яті, який надається рядку під час його оголошення;

ü поточна довжина рядка (завжди менше або дорівнює загальній довжині), що показує кількість значеннєвих символів рядка в кожний конкретний момент виконання програми.

 

Як і елементи будь-якого масиву, символи рядка зберігаються у поряд розташованих комірках оперативної пам’яті.

Обсяг пам’яті, що виділяється для збереження значення рядкової змінної, буде на один байт більше від вказаної в оголошення загальної довжини рядка.

Наприклад:

var stroka: String[30]; //резервується 31 байт – загальна довжина 30

stroka1: String[255]; // резервується 256 байт – загальна довжина 255

name: String[15]; // резервується 15 байт – загальна довжина 15

name1: ShortString; // резервується 256 байт – загальна довжина 256

Наприклад, припустимо що в змінну name ввели рядок символів ‘Object Pascal’. Зображення name в оперативної пам’яті буде таким, як зображено на рис.:

#13 O b j e c t   P a s c a l    
                               

В елементі з індексом 0 зберігається символ ♪, код якого дорівнює поточній довжині рядка ‘Object Pascal’, тобто 13. (#12=♀ #1=☺, #2=☻ #3=♥ #11=♂ (Alt+ …))

Елементам з індексами 14, 15 можна згодом присвоїти будь які символи або прочитати їх. Але на даний момент вони не відображатимуться.




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 1151; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.03 сек.