Литерный (символьный) тип
Для работы с текстом введен литерный тип char.
Объявление переменных:
VAR С, Cl: char;
Переменные этого типа принимают значения из определенной упорядоченной последовательности символов, образующих алфавит компьютера. Список символов содержится в таблице ASCII ( американский стандартный код для обмена информацией). Номер, который символ имеет в таблице ASCII, называется кодом этого символа. Символ в памяти занимает один байт.
Кодовая таблица ASCII содержит 256 символов и делится на две части: основную и альтернативную. Первая часть содержит символы с кодами 0 - 127. В эту группу входят:
- управляющие символы (коды 0-31), получающиеся при нажатии клавиш CTRL+ <латинская буква>;
- пробел (код 32);
- арабские цифры (коды 48-59);
- прописные латинские буквы (коды 65-90);
- строчные латинские буквы (коды 97-122);
- арифметические операции и специальные символы из алфавита Турбо Паскаля.
Вторая часть ASCII таблицы на русифицированных IBM PC и компьютерах, совместимых с ними, используется в двух вариантах: основная кодировка (отечественные ПК) и альтернативная (IBM PC). Кодировки отличаются расположением русского алфавита. Для кодировки функциональных клавиш, клавиш управления курсором, редактирования, а также клавиш, работающих в режиме ALT , используется расширенный код, который состоит из двух символов: первый символ - 0, второй - цифровой код.
Для задания литерных констант наряду с классической формой (символ в апострофах) используется представление: #<код>. Так запись 'А' эквивалентна #65, а '1' - #49. Управляющие символы могут записываться клавиатурными обозначениями: ^А(CTRL + А), что равносильно #1.
Для распознавания символов могут пригодиться следующие неравенства:
'0' <= С <= '9'- символ С - цифра;
'а' <= С <= 'z'- символ С - строчная буква латинского алфавита;
'А' <= С <= 'Z'- символ С - прописная буква латинского алфавита.
С литерными значениями работают функции: Succ(C), Pred(C) и три функции преобразования Ord(C), Сhr(код) и Upcase(C).
Например, Ord('0') = 48, Chr(48) = '0', Ord('A') = 65, Chr(65) = 'A', Pred('b') = 'a', Pred('9') = '8', Succ('a') = 'b', Succ('8') = '9', Upcase('d') = 'D', Upcase('D') = 'D' (аналогично и для любого другого символа, отличного от строчной латинской буквы).
Тип |
Операции |
Основные |
Примеры |
---|---|---|---|
С |
отношения: |
ord(x) = код x; pred(x) - литера, предшествующая x; succ(x) - литера, следующая за x; chr(i) - литера с номером i |
var ch:char; begin |