Скачать презентацию Программирование на Delphi Символы и строки в Delphi Скачать презентацию Программирование на Delphi Символы и строки в Delphi

лекция4 - Символы и строки в Delphi.ppt

  • Количество слайдов: 24

Программирование на Delphi Символы и строки в Delphi Программирование на Delphi Символы и строки в Delphi

План лекции n Символы n Строки n Операции со строками План лекции n Символы n Строки n Операции со строками

Символы n Для хранения и обработки символов используются переменные типа Ansichar и wide. Char. Символы n Для хранения и обработки символов используются переменные типа Ansichar и wide. Char. Тип Ansichar представляет собой набор ANSI-символов, в котором каждый символ кодируется восьмиразрядным двоичным числом (байтом). Тип wide. Char представляет собой набор символов в кодировке Unicode, в которой каждый символ кодируется двумя байтами. n Для обеспечения совместимости с предыдущими версиями поддерживается тип Char, эквивалентный Ansi. Char.

Символы n Значением переменной символьного типа может быть любой отображаемый символ: буква русского или Символы n Значением переменной символьного типа может быть любой отображаемый символ: буква русского или латинского алфавитов; n цифра; n знак препинания; n специальный символ, например, "новая строка". n

Символы n Переменная символьного типа должна быть объявлена в разделе объявления переменных. Инструкция объявления Символы n Переменная символьного типа должна быть объявлена в разделе объявления переменных. Инструкция объявления символьной переменной в общем виде выглядит так: Имя: char; где имя – имя переменной символьного типа; char – ключевое слово обозначения символьного типа. n Примеры: otv: char; ch: char;

Символы n Как и любая переменная программы, переменная типа char может получить значение в Символы n Как и любая переменная программы, переменная типа char может получить значение в результате выполнения инструкции присваивания. Если переменная типа char получает значение в результате выполнения операции присваивания, то справа от знака : = должно стоять выражение типа char, например, переменная типа char или символьная константа – символ, заключенный в кавычки.

Символы n Переменную типа char можно сравнить с другой переменной типа char или с Символы n Переменную типа char можно сравнить с другой переменной типа char или с символьной константой. Сравнение основано на том, что каждому символу поставлено в соответствие число, причем символу 'о' соответствует число меньшее, чем символу 'У', символу 'А' – меньшее, чем 'в', символу 'V' – меньшее, чем 'а'. Таким образом, можно записать: '0' < '1' <. . . < '9' <. . . < 'A' < 'B' <. . . < 'Z' < 'a' < 'b' <. . . < 'z'

Символы n Символам русского алфавита соответствуют числа большие, чем символам латинского алфавита, при этом Символы n Символам русского алфавита соответствуют числа большие, чем символам латинского алфавита, при этом справедливо следующее: 'А' < 'Б' < 'В' <. . . < 'Ю' < 'Я' < 'а' < 'б' < 'в' <. . . < 'э' < 'ю' < 'я'

Символы n В тексте программы вместо символа можно указать его код, поставив перед числом Символы n В тексте программы вместо символа можно указать его код, поставив перед числом оператор #. Например, вместо константы 'в' можно записать #193. Такой способ записи, как правило, используют для записи служебных символов или символов, которые во время набора программы нельзя ввести с клавиатуры. n К примеру, часто используемый при записи сообщений символ "новая строка" записывается так: #13.

Символы n В программах обработки символьной информации часто используют функции chr и Ord. n Символы n В программах обработки символьной информации часто используют функции chr и Ord. n Значением функции chr является символ, код которого указан в качестве параметра. Например, в результате выполнения инструкции c: =chr(32) переменной с будет присвоено значение пробел.

Символы n Функция ord позволяет определить код символа, который передается ей в качестве параметра. Символы n Функция ord позволяет определить код символа, который передается ей в качестве параметра. Например, в результате выполнения инструкции k: =ord('*') переменная k будет содержать число 42 – код символа *.

Строки n Строки могут быть представлены следующими типами: shortstring, Longstring и widestring. Различаются эти Строки n Строки могут быть представлены следующими типами: shortstring, Longstring и widestring. Различаются эти типы предельно допустимой длиной строки, способом выделения памяти для переменных и методом кодировки символов.

Строки n Переменной типа shortstring память выделяется статически, т. е. до начала выполнения программы, Строки n Переменной типа shortstring память выделяется статически, т. е. до начала выполнения программы, и количество символов такой строки не может превышать 255. Переменным типа Longstring и widestring память выделяется динамически – во время работы программы, поэтому длина таких строк практически не ограничена.

Строки n Помимо перечисленных выше типов можно применять универсальный строковый тип String. Тип String Строки n Помимо перечисленных выше типов можно применять универсальный строковый тип String. Тип String эквивалентен типу Shortstring. n Переменная строкового типа должна быть объявлена в разделе объявления переменных.

Строки n Инструкция объявления в общем виде выглядит так: Имя: String; или Имя: String Строки n Инструкция объявления в общем виде выглядит так: Имя: String; или Имя: String [длина] где имя – имя переменной; string – ключевое слово обозначения строкового типа; длина – константа целого типа, которая задает максимально допустимую длину строки.

Строки n Используя операции =, <, >, <=, >= и <>, переменную типа string Строки n Используя операции =, <, >, <=, >= и <>, переменную типа string можно сравнить с другой переменной типа string или со строковой константой. n Строки сравниваются посимвольно, начиная с первого символа. Если все символы сравниваемых строк одинаковые, то такие строки считаются равными. Если в одинаковых позициях строк находятся разные символы, большей считается та строка, у которой в этой позиции находится символ с большим кодом.

Строки n Кроме операции сравнения, к строковым переменным и константам можно применить операцию сложения, Строки n Кроме операции сравнения, к строковым переменным и константам можно применить операцию сложения, в результате выполнения которой получается новая строка. n Например, в результате выполнения инструкций first_name: ='Иван'; last_name: ='Иванов'; ful_name: =first_name+last_name; переменная ful_name получит значение 'Иванов'.

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

Операции со строками n Процедура delete позволяет удалить часть строки. В общем виде обращение Операции со строками n Процедура delete позволяет удалить часть строки. В общем виде обращение к этой процедуре выглядит так: delete(Строка, р, n) где Строка – переменная или константа строкового типа; р – номер символа, с которого начинается удаляемая подстрока; n – длина удаляемой подстроки.

Операции со строками n Например, в результате выполнения инструкций s: ='Город Санкт-Петербург'; delete(s, 7, Операции со строками n Например, в результате выполнения инструкций s: ='Город Санкт-Петербург'; delete(s, 7, 6); значением переменной s будет строка 'Город Петербург'.

Операции со строками n Функция роs позволяет определить положение подстроки в строке. В общем Операции со строками n Функция роs позволяет определить положение подстроки в строке. В общем виде обращение к функции выглядит так: pos(Подстрока, Строка) ; где Подстрока – строковая константа или переменная, которую надо найти в строковой константе или переменной Cтрока.

Операции со строками n Например, в результате выполнения инструкции р : = pos('Пе', 'Санкт-Петербург'); Операции со строками n Например, в результате выполнения инструкции р : = pos('Пе', 'Санкт-Петербург'); значение переменной р будет равно 7. n Если в строке нет искомой подстроки, то значение функции роs будет равно нулю.

Операции со строками n Функция сору позволяет выделить фрагмент строки. В общем виде обращение Операции со строками n Функция сору позволяет выделить фрагмент строки. В общем виде обращение к функции сору выглядит так: сору(Строка, р, п) где Строка – выражение строкового типа, содержащее строку, фрагмент которой надо получить; р – номер первого символа, с которого начинается выделяемая подстрока; n – длина выделяемой подстроки.

Операции со строками n Например, в результате выполнения инструкций st: = 'Инженер Иванов'; fam: Операции со строками n Например, в результате выполнения инструкций st: = 'Инженер Иванов'; fam: =copy(st, 9, 6); значением переменной fam будет строка 'Иванов'.