Заголовочный файл 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
на большинстве платформ работают одинаково.