Символы в Delphi

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

Значением переменной символьного типа может быть любой отображаемый символ:

  • буква русского или латинского алфавитов;
  • цифра;
  • знак препинания;
  • специальный символ, например, "новая строка".

Переменная символьного типа должна быть объявлена в разделе объявления переменных. Инструкция объявления символьной переменной в общем виде выглядит так: 

 

Имя: Char;

 

где:

  •  имя — имя переменной символьного типа;
  •  char — ключевое слово обозначения символьного типа.

 

Примеры:

 

otv: char;
ch: char;

 

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

В результате выполнения инструкций

cl := '*';
с2 := cl;

переменная cl получает значение присваиванием значения константы, а переменная с2 — присваиванием значения переменной cl (предполагается, что переменные cl и с2 являются переменными символьного типа).

 

Переменную типа char можно сравнить с другой переменной типа char или с символьной константой. Сравнение основано на том, что каждому символу поставлено в соответствие число (см. приложение 2), причем символу 'о' соответствует число меньшее, чем символу У, символу 'А' — меньшее, чем 'в', символу У — меньшее, чем а.

Таким образом, можно записать:

 

' 0 ' ' 1 ' < . . < ' 9 ' < . . < ' A'<' B ' < . . <'Z ' ' a ' ' b ' < . . < ' z '

 

Символам русского алфавита соответствуют числа большие, чем символам латинского алфавита, при этом справедливо следующее:

  

' А ' ' В ' ' В ' < . . < ' Ю ' ' Я ' ' а ' ' б ' ' в ' < . . . < ' э ' ' ю ' <'я'

 

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

 

В программах обработки символьной информации часто используют функции chr и ord. Значением функции chr яеляется символ, код которого указан в качестве параметра. Например, в результате выполнения инструкции c:=Chr(32) переменной с будет присвоено значение пробел. Функция Ord позволяет определить код символа, который передается ей в качестве параметра. Например, в результате выполнения инструкции ki-ordf1*1 ) переменная k будет содержать число 42 — код символа *.

dle

Помоги проекту! Расскажи друзьям об этом сайте: