Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры епта.docx
Скачиваний:
2
Добавлен:
25.09.2019
Размер:
342.94 Кб
Скачать

1.*Строковые константы. Правила их записи в программе. Строковые переменные постоянной длины. Формат задания. Представление в памяти. Операции, определенные над строковыми данными постоянной длины.

Строковые константы-последовательность любых символов допускаемых для представления в компьютере заключенные в апострафы.Правила записи строковых констант в программу:1.Если в строку необходимо поместить апостраф его необходимо написать дважды.При подсчете длины два рядом стоящих апострафа считаются одним символом;2.При подсчете длины строки учитываются пробелы;3.Допускаются пустые символьные константы(несодержащие символа);4.Делфи разрешает вставлять в строку символов управляющие символы,символ решетка с целой константой без знака(0..255) обозначает соответствие этому значению символа в ходе обмена информацией.Между решеткой и константой пробела быть не должно.Если несколько управляющих символов входят в символьную константу между ними недолжно быть разделения. Разд.симв. пишутся вне апострафов.

2.Строки переменной длины. Короткие и длинные строки. Формат задания. Представление в памяти. Операции, определенные над строковыми данными переменной длины.

В языке Паскаль существует два способа задания строковых переменных.

1-ый способ задания строковых переменных.Задает строковые переменные постоянной длины. Строковаяпеременная определяется как одномерный массив символов:

Array [1 .. N] Of Char

<Тип_индекса> может быть задан только с помощью типа диапазон, где

N – длина строки (N ≥ 1), определяемая как целое число без знака.При таком способе объявления строка обладает всеми свойствами

массивов.Например, строковой переменной можно присвоить значение другой

строковой переменной той же длины; возможно обращение к отдельным

символам строковой переменной, используя индексные переменные.Особенности строковых переменных по сравнению с массивами:

1) Строковым переменным могут быть присвоены значения строковых

констант (литералов), если длина строки равна длине литерала.2) Над значениями строковых переменных одинаковой длины можно

выполнять операции сравнения (=, <>, >, <, >=, <=). Сравнение производится

посимвольно, начиная с левой стороны до первого несовпадающего символа.

Считается большей та строка, в которой первый несовпадающий символ имеет

больший номер в коде обмена информацией (ASCII).

Строковые переменные различной длины сравнивать нельзя.2-ой способ задания строковых переменных.

Вторым способом задания строковых переменных является использование типа String. Формат задания данного типа представляет рисунок.

С помощью типа String определяются строки переменной длины. N после

слова String (см. рисунок 10.5) определяет максимальную длину строки. N должно иметь положительное целочисленное значение, не

превышающее 255 (≥1).

Если N в определении опущено (по умолчанию), то считается, что максимальная длина строки равна 255 = 28 – 1. Переменной типа String может быть присвоено значение другой строки любой длины. Если длина присваиваемой строки меньше или равна

максимальной длине данной строки, то данная переменная типа String имеет

текущую длину. Текущая длина строки определяется длиной последнего занесенного в нее значения.Если длина присваиваемого значения превышает указанную в объявлении максимальную длину, то лишние символы справа отсекаются. Переменной типа String выделяется количество байтов памяти на единицу превышающее максимальную длину, указанную в определении типа. В левом байте (с номером 0) хранится текущая длина строки в двоичном коде.

Возможен доступ к отдельным символам строки типа String. При этом используются индексные переменные. Правила индексации аналогичны

массиву символов с диапазоном индексов

1 .. <Текущая_длина_строки>.

Если при обращении к отдельным символам строки произойдет выход за текущую длину строки, то считанные из строки символы будут случайными, а

присваивания элементам строки, находящимся вне текущей длины, не повлияют на значение строковой переменной. Строковым выражением называется выражение, результатом вычисления которого является строковое значение. Строковые выражения

состоят из строковых констант, строковых переменных, имен функций и знаков операций. Над данными типа String определены операции сравнения (=, <>, >, <,

>=, <=) и операция конкатенации (сцепления). Операция конкатенации имеет более высокий приоритет, чем операции сравнения.Сравнение производится в соответствии с упорядочением символов в

коде ASCII. Сравниваются символы строк последовательно слева направо до

первого несовпадающего символа. Большей считается строка, у которой первый несовпадающий символ имеет больший код в таблице ASCII. Если строки имеют разную длину и их символы совпадают в общей части, то более короткая строка считается меньшей. Строки считаются равными, если они имеют

одинаковую текущую длину и одни и те же символы.

Операция сцепления обозначается символом +. При ее выполнении две строки соединяются в одну результирующую строку. Длина результирующей

строки не должна превышать 255 символов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]