Заголовочный файл cctype содержит функции обработки символов. Эта библиотека объявляет набор функций для выполнения различных классификаций и некоторых операций преобразования отдельных символов.

Все функции, определённые в заголовочном файле cctype принимают в качестве аргумента значение типа int (эквивалент одного символа) и возвращают целое число, которое является эквивалентом символа, либо значением, которое представляет логическое значение: целочисленное значение 0 - ложь, и целочисленное значение, отличное от 0 - истина. В этом файле определены два набора функций:

  • функции классификации символов ;
  • функции преобразования символов.

Первый набор - функции возвращающие логическое значение, они проверяют, к какой категории символов относится символ, переданный им в качестве аргумента. К ним относятся следующие функции:

isalumn Функция возвращает истинное значение true, если её аргумент - буква или цифра, и false(ложь) в других случаях.
isalpha Функция возвращает истинное значение true, если её аргумент - буква,  и false(ложь) в других случаях.
iscntrl Функция возвращает истинное значение true, если её аргумент - управляемый символ, и false(ложь) в других случаях.
isdigit Функция возвращает истинное значение true, если её аргумент - десятичная цифра, и false(ложь) в других случаях.
isgraph Функция возвращает истинное значение true, если её аргумент - символ, имеющий графическое представление, и false(ложь)  в других случаях.
islower Функция возвращает истинное значение true, если её аргумент - строчный символ алфавита, и false(ложь) в других случаях.
isprint Функция возвращает истинное значение true, если её аргумент - печатный символ, и false(ложь) в других случаях.
ispunct Функция возвращает истинное значение true, если её аргумент - знак пунктуации, и false(ложь) в других случаях.
isspace Функция возвращает истинное значение true, если её аргумент - любой знак пробела, и false(ложь) в других случаях.
isupper Функция возвращает истинное значение true, если её аргумент - прописная буква алфавита, и false(ложь) в других случаях.
isxdigit Функция возвращает истинное значение true, если её аргумент - цифра шестнадцатеричной системы исчисления, и false(ложь) в других случаях.

Второй набор функций - это функции, выполняющие некоторые преобразования символов. Их всего две:

tolower Преобразование заглавного символа в строчный.
toupper Преобразование строчного символа в  заглавный.

Ниже представлена таблица 127-ми символов ASCII. На пересечении некоторых строк и столбцов закрашенные ячейки. Что они значат? В столбцах таблицы - указаны функции заголовочного файла <ctype>. В строках - символы таблицы ASCII. Напротив каждой функции залитая зелёным цветом ячейка, которая означает, что функция возвращает истину, обрабатывая этот символ.

ASCII символы isalumn isalpha iscntrl isdigit isgraph islower isprint isxdigit ispunct isspace isupper
0x00-0x08 NUL и другие управляющие символы
0x09-0x0D пробелы: 'v''n''t', 'r', 'f'
0x0E-0x1F другие управляющие символы
0x20 пробел ' '
0x21-0x2F ! " # $ % & ' ( ) * + , - . /
0x30-0x39 0 1 2 3 4 5 6 7 8 9
0x3A-0x40 : ; < = > ? @
0x41-0x46 A B C D E F
0x47-0x5A G H I J K L M N O P Q R S T U V W X Y Z
0x5B-0x60 [ ] ^ _ `
0x61-0x66 a b c d e f
0x67-0x7A g h i j k l m n o p q r s t u v w x y z
0x7B-0x7E { | } ~
0x7F DEL

Символы расширенного набора символов (выше 0x7F) могут принадлежать различным категориям в зависимости от языка и платформы. Как правило, ispunct, isgraph и isprint на большинстве платформ работают одинаково.

Автор:
Дата:
Поделиться: