
Символьный тип char похож на строковой тип string , однако он имеет множество интересных функций , предназначенных для работы с ним. О типе boolean можно узнать здесь
Поэтому типу char выделена целая статья в нашем самоучителе.
Тип Char :
Как уже было сказано , тип char почти не отличается от типа string. Однако , в отличии от string , он хранит в себе всего один символ , а не целую строку. Сравнение переменной типа char и типа string :

В переменной типа char можно хранить любой символ кода ASCII.
Функция ord :
Мы знаем , что любой символ можно представить в виде кода. Функция ord возвращает тот самый код символа. Как использовать функцию ord :
1 2 3 4 5 6 7 |
program mypascal; var x:char; beginwriteln('Введите символ :'); readln(x); writeln(ord(x)); end. |
В результате выполнения данной программы мы получим код введенного символа.
Например вы ввели символ «А» , тогда на выходе программы мы получим число 65 , которое соответствует коду символа «А».
Функция chr :
Если мы можем взять код из символа , значит и можем сделать символ из кода. Данной операцией занимается команда chr. Она возвращает символ из кода. Пример работы данной функции можно рассмотреть ниже.

В результате выполнения данной программы мы выведем число 65 (код символа А) , а потом выведем сам символ А.
Особенность типа char :
Особенностью данного типа является то , что он порядковый. То есть символ C идет после символа B и т.д. В таком случае их можно сравнивать.
1 2 3 4 5 6 7 8 9 10 11 |
program mypascal; var x,x1:char; beginx:= 'A'; x1:= 'B'; if (x < x1) then writeln('True') else writeln('False'); end. |
В результате мы получим сообщение «True» , так как символ B больше символа A.
Запомните : строчной символ больше прописного ( заглавного ).
Функция pred :
Данная функция возвращает предшествующий символ. Например функция
возвращает символ a.
Функция succ :
Эта функция работает в аналогии с функцией pred. Однако функция succ возвращает следующий символ , а не предшествующий. Функция
возвращает символ b.
На заметку :
Интересной особенностью кодов символов является то , что коды строчных и прописных символов отличаются друг от друга на 32. Проще говоря символ «А» имеет код 65 , а символ «а» имеет код 97 и так в аналогии с каждым символом.
Рассмотрим такую задачу : Человек вводит строчной символ ,а нам нужно вывести прописной ( заглавный ).
var
x:char;
beginwriteln(‘Введите один символ (строчной) :’);
readln(x);
writeln( chr(ord(x)-32) );end.