Операции со строками в языке Delphi. Ошибки при использовании массивов

Страницы работы

Фрагмент текста работы

Программирование

Лекция №3

Операции со строками В языке Delphi есть несколько полезных при работе со строками функций и процедур. Функция Length Возвращает длину строки. У этой функции один параметр - выражение строкового типа. Значением функции является количество символов (целое число), из которых состоит строка. Например, в результате выполнения инструкций n:=length('Иванов'); m:=length(' Невский проспект '); значение переменных n и m будет равно 6 и 20.

Процедура Delete Процедура Delete позволяет удалить часть строки. В общем виде обращение к этой процедуре выглядит так: Delete(Строка, N, L); где: Строка - переменная или константа строкового типа; N - номер символа, с которого начинается удаляемая подстрока; L - длина удаляемой подстроки. Например, в результате выполнения инструкций S:='Город Санкт-Петербург'; Delete(S,7,6); значением переменной S будет строка 'Город Петербург'.

Функция Pоs Функция Pоs позволяет определить положение подстроки в строке. В общем виде обращение к функции выглядит так: Pos (Подстрока,Строка) ; где Подстрока - строковая константа или переменная, которую надо найти в строковой константе или переменной строка. Например, в результате выполнения инструкции р := Pos('Пе','Санкт-Петербург'); значение переменной р будет равно 7. Если в строке нет искомой подстроки, то значение функции Pоs будет равно нулю. Ниже приведена инструкция While, в результате выполнения которой удаляются начальные пробелы из строки st. While(Pos(' ',st) = 1) and (Length(st) > 0) do Delete (st,1,1); Пробелы удаляет инструкция Delete(st, i, i), которая выполняется в цикле до тех пор, пока первым символом строки является пробел (в этом случае значение Pоs(' ',st) равно единице). Необходимость проверки условия Length(st) > 0 объясняется возможностью того, что введенная строка состоит только из пробелов.

Функция Cору Функция Cору позволяет выделить фрагмент строки. В общем виде обращение к функции Cору выглядит так: Cору(Строка, N, L ) где: Cтрока - выражение строкового типа, содержащее строку, фрагмент которой надо получить; N - номер первого символа, с которого начинается выделяемая подстрока; L - длина выделяемой подстроки. Например, в результате выполнения инструкций St:= 'Инженер Иванов'; Fam:=Copy(St, 9, 6) ; значением переменной Fam будет строка 'Иванов'.

Тип дата-время Тип дата-время определяется стандартным идентификатором TDateTime и предназначен для одновременного хранения и даты, и времени. Во внутреннем представлении он занимает 8 байт и подобно Currency представляет собой вещественное число с фиксированной дробной частью: в целой части числа хранится дата, в дробной - время. Дата определяется как количество суток, прошедших с 30 декабря 1899 года, а время - как часть суток, прошедших с 0 часов, так что значение 36444,837 соответствует дате 11.10.1999 и времени 20:05. Количество суток может быть и отрицательным, однако значения меньшие -693594 (соответствует дате 00.00.0000 от Рождества Христова) игнорируются функциями преобразования даты к строковому типу. Над данными типа TDateTime определены те же операции, что и над вещественными числами, а в выражениях этого типа могут участвовать константы и переменные целого и вещественного типов.

Для работы с датой и временем используются следующие функции и процедуры: Function Date: TDateTime;  - Возвращает текущую дату; Function DateToStr(D: TDateTime): String; - Преобразует дату в строку символов; Function DateTimeToStr(D: TDateTime): String ; - Преобразует дату и время в строку символов; Function FormatDateTime (Format: String ;   Value: TDateTime): String; - Преобразует дату и время из параметра value в строку символов в соответствии со спецификаторами параметра Format; Function Now: TDateTime; - Возвращает текущую дату и время; Function Time: TDateTime; - Возвращает текущее время; Function TimeToStr(T: TDateTime): String; - Преобразует время в строку;

СТРУКТУРИРОВАННЫЕ ТИПЫ Любой из структурированных типов (а в Object Pascal их четыре: массивы, записи, множества и файлы) характеризуется множественностью образующих этот тип элементов. Каждый элемент, в свою очередь, может принадлежать структурированному типу, что позволяет говорить о возможной вложенности типов. В Object Pascal допускается произвольная глубина вложенности типов. В целях совместимости со стандартным Паскалем в Object Pascal разрешается перед описанием структурированного типа ставить зарезервированное слово packed, предписывающее компилятору по возможности экономить память, отводимую под объекты структурированного типа; но компилятор фактически игнорирует это указание: “упаковка” данных в Object Pascal осуществляется автоматачески везде, где это возможно.

Массивы Массивы могут быть одномернми или многомерными, статическими

Похожие материалы

Информация о работе