Null-terminated byte strings
Нуль-терминированная байтовая строка (NTBS) — это последовательность ненулевых байтов, за которыми следует байт со значением ноль (завершающий нулевой символ). Каждый байт в байтовой строке кодирует один символ из некоторого набора символов. Например, массив символов { ' \x63 ' , ' \x61 ' , ' \x74 ' , ' \0 ' } является NTBS, содержащей строку "cat" в ASCII кодировке.
Содержание |
Функции
Классификация символов |
|
|
Определено в заголовочном файле
<ctype.h>
|
|
|
проверяет, является ли символ буквенно-цифровым
(функция) |
|
|
проверяет, является ли символ буквенным
(функция) |
|
|
проверяет, является ли символ строчным
(функция) |
|
|
проверяет, является ли символ заглавным
(функция) |
|
|
проверяет, является ли символ цифрой
(функция) |
|
|
проверяет, является ли символ шестнадцатеричным
(функция) |
|
|
проверяет, является ли символ управляющим
(функция) |
|
|
проверяет, является ли символ графическим
(функция) |
|
|
проверяет, является ли символ пробельным
(функция) |
|
|
(C99)
|
проверяет, является ли символ пустым
(функция) |
|
проверяет, является ли символ печатаемым
(функция) |
|
|
проверяет, является ли символ символом пунктуации
(функция) |
|
Манипуляции с символами |
|
|
преобразует символ в строчный
(функция) |
|
|
преобразует символ в заглавный
(функция) |
|
Примечание: дополнительные функции, имена которых начинаются с
to
или
is
, за которыми следует строчная буква, могут быть добавлены в заголовочный файл
<ctype.h>
в будущем и не должны определяться программами, которые включают этот заголовочный файл.
| Значения ASCII | символы | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| десятичное | шестнадцатеричное | восьмеричное | |||||||||||||
| 0–8 |
\x0
–
\x8
|
\0
–
\10
|
управляющие коды (
NUL
и др.)
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 9 |
\x9
|
\11
|
табуляция (
\t
)
|
≠0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 10–13 |
\xA
–
\xD
|
\12
–
\15
|
пробельные символы (
\n
,
\v
,
\f
,
\r
)
|
≠0
|
0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 14–31 |
\xE
–
\x1F
|
\16
–
\37
|
управляющие коды |
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 32 |
\x20
|
\40
|
пробел |
0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 33–47 |
\x21
–
\x2F
|
\41
–
\57
|
!"#$%&'()*+,-./
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 48–57 |
\x30
–
\x39
|
\60
–
\71
|
0123456789
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
0
|
0
|
0
|
≠0
|
≠0
|
| 58–64 |
\x3A
–
\x40
|
\72
–
\100
|
:;<=>?@
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 65–70 |
\x41
–
\x46
|
\101
–
\106
|
ABCDEF
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
≠0
|
| 71–90 |
\x47
–
\x5A
|
\107
–
\132
|
GHIJKLMNOP
QRSTUVWXYZ
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
≠0
|
0
|
0
|
0
|
| 91–96 |
\x5B
–
\x60
|
\133
–
\140
|
[\]^_`
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 97–102 |
\x61
–
\x66
|
\141
–
\146
|
abcdef
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
0
|
≠0
|
0
|
≠0
|
| 103–122 |
\x67
–
\x7A
|
\147
–
\172
|
ghijklmnop
qrstuvwxyz
|
0
|
≠0
|
0
|
0
|
≠0
|
0
|
≠0
|
≠0
|
0
|
≠0
|
0
|
0
|
| 123–126 |
\x7B
–
\x7E
|
\173
–
\176
|
{|}~
|
0
|
≠0
|
0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 127 |
\x7F
|
\177
|
символ удаления (
DEL
)
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
Преобразования в числовые форматы и из них |
|
|
Определено в заголовочном файле
<stdlib.h>
|
|
|
преобразует байтовую строку в значение с плавающей запятой
(функция) |
|
|
(C99)
|
преобразует байтовую строку в целочисленное значение
(функция) |
|
(C99)
|
преобразует байтовую строку в целочисленное значение
(функция) |
|
(C99)
|
преобразует байтовую строку в целое число без знака
(функция) |
|
(C99)
(C99)
|
преобразует байтовую строку в значение с плавающей запятой
(функция) |
|
(C23)
(C23)
(C23)
|
преобразует значение с плавающей запятой в байтовую строку
(функция) |
|
Определено в заголовочном файле
<inttypes.h>
|
|
|
(C99)
(C99)
|
преобразует байтовую строку в
intmax_t
или
uintmax_t
(функция) |
Манипуляции со строками |
|
|
Определено в заголовочном файле
<string.h>
|
|
|
(C11)
|
копирует одну строку в другую
(функция) |
|
(C11)
|
копирует определенное количество символов из одной строки в другую
(функция) |
|
(C11)
|
объединяет две строки
(функция) |
|
(C11)
|
объединяет определенное количество символов двух строк
(функция) |
|
преобразует строку так, чтобы strcmp давал тот же результат, что и strcoll
(функция) |
|
|
(C23)
|
выделяет копию строки
(функция) |
|
(C23)
|
выделяет копию строки указанного размера
(функция) |
Исследование строк |
|
|
Определено в заголовочном файле
<string.h>
|
|
|
(C11)
|
возвращает длину заданной строки
(функция) |
|
сравнивает две строки
(функция) |
|
|
сравнивает определённое количество символов двух строк
(функция) |
|
|
сравнивает две строки в соответствии с текущей локалью
(функция) |
|
|
находит первое вхождение символа
(функция) |
|
|
находит последнее вхождение символа
(функция) |
|
|
возвращает длину максимального начального сегмента, состоящего
только из символов, найденных в другой байтовой строке (функция) |
|
|
возвращает длину максимального начального сегмента, который состоит
только из символов, не найденных в другой байтовой строке (функция) |
|
|
находит первое вхождение любого символа из одной строки в другой строке
(функция) |
|
|
находит первое вхождение подстроки символов
(функция) |
|
|
(C11)
|
находит следующий токен в байтовой строке
(функция) |
Манипуляции с символьными массивами |
|
|
Определено в заголовочном файле
<string.h>
|
|
|
выполняет поиск в массиве первого вхождения символа
(функция) |
|
|
сравнивает два буфера
(функция) |
|
|
(C23)
(C11)
|
заполняет буфер символом
(функция) |
|
(C11)
|
копирует один буфер в другой
(функция) |
|
(C11)
|
перемещает один буфер в другой
(функция) |
|
(C23)
|
копирует один буфер в другой, останавливаясь после указанного разделителя
(функция) |
Разное |
|
|
Определено в заголовочном файле
<string.h>
|
|
|
(C11)
(C11)
|
возвращает текстовую версию заданного кода ошибки
(функция) |
Ссылки
| Расширенное содержимое |
|---|
|
Смотрите также
|
Документация C++
для
Null
-terminated byte strings
|