Namespaces
Variants

Null-terminated byte strings

From cppreference.net

以空字符结尾的字节字符串(NTBS)是由非零字节序列后接一个值为零的字节(终止空字符)组成的。字节字符串中的每个字节编码了某个字符集中的一个字符。例如,字符数组 { ' \x63 ' , ' \x61 ' , ' \x64 ' , ' \0 ' } 就是一个在 ASCII 编码中存储字符串 "cat" 的NTBS。

目录

函数

字符分类
定义于头文件 <ctype.h>
检查字符是否为字母数字
(函数)
检查字符是否为字母
(函数)
检查字符是否为小写字母
(函数)
检查字符是否为大写字母
(函数)
检查字符是否为数字
(函数)
检查字符是否为十六进制数字
(函数)
检查字符是否为控制字符
(函数)
检查字符是否为图形字符
(函数)
检查字符是否为空白字符
(函数)
(C99)
检查字符是否为空白字符
(函数)
检查字符是否为可打印字符
(函数)
检查字符是否为标点字符
(函数)
字符操作
转换字符为小写
(函数)
转换字符为大写
(函数)

注意:未来可能在头文件 <ctype.h> 中添加名称以 to is 开头、后接小写字母的附加函数,包含该头文件的程序不应定义这些函数。

说明:根据要求,仅翻译了表格中的连接符"–"为中文破折号"——",其余所有HTML标签、属性、 标签内的内容以及C++相关术语均保持原样未作翻译。
ASCII 值 字符

iscntrl
iswcntrl

isprint
iswprint

isspace
iswspace

isblank
iswblank

isgraph
iswgraph

ispunct
iswpunct

isalnum
iswalnum

isalpha
iswalpha

isupper
iswupper

islower
iswlower

isdigit
iswdigit

isxdigit
iswxdigit

十进制 十六进制 八进制
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>
将字节字符串转换为浮点数值
(函数)
将字节字符串转换为整数值
(函数)
将字节字符串转换为整数值
(函数)
将字节字符串转换为无符号整数值
(函数)
将字节字符串转换为浮点数值
(函数)
将浮点数值转换为字节字符串
(函数)
定义于头文件 <inttypes.h>
将字节字符串转换为 intmax_t uintmax_t
(函数)
字符串操作
定义于头文件 <string.h>
将一个字符串复制到另一个字符串
(函数)
将指定数量的字符从一个字符串复制到另一个字符串
(函数)
连接两个字符串
(函数)
连接两个字符串的指定数量字符
(函数)
转换字符串使得 strcmp 能产生与 strcoll 相同的结果
(函数)
(C23)
分配字符串的副本
(函数)
(C23)
分配指定大小的字符串副本
(函数)
字符串检查
定义于头文件 <string.h>
返回给定字符串的长度
(函数)
比较两个字符串
(函数)
比较两个字符串的指定数量字符
(函数)
根据当前区域设置比较两个字符串
(函数)
查找字符的首次出现
(函数)
查找字符的最后一次出现
(函数)
返回仅包含另一字节字符串中字符的
最大起始段的长度
(函数)
返回仅包含不在另一字节字符串中找到的字符的
最大起始段的长度
(函数)
在一个字符串中查找另一个字符串中任意字符的首个出现位置
(函数)
查找字符子串的首次出现位置
(函数)
在字节字符串中查找下一个令牌
(函数)
字符数组操作
定义于头文件 <string.h>
在数组中搜索字符的首次出现
(函数)
比较两个缓冲区
(函数)
用字符填充缓冲区
(函数)
将一个缓冲区复制到另一个缓冲区
(函数)
移动一个缓冲区到另一个缓冲区
(函数)
(C23)
将一个缓冲区复制到另一个缓冲区,在遇到指定分隔符后停止
(函数)
杂项
定义于头文件 <string.h>
返回给定错误码的文本描述
(函数)

参考文献

扩展内容
  • C23 标准 (ISO/IEC 9899:2024):
  • 7.4 字符处理 <ctype.h> (页: TBD)
  • 7.8 整型格式转换 <inttypes.h> (页: TBD)
  • 7.22 通用工具 <stdlib.h> (页: TBD)
  • 7.24 字符串处理 <string.h> (页: TBD)
  • 7.31.2 字符处理 <ctype.h> (页: TBD)
  • 7.31.5 整型格式转换 <inttypes.h> (页: TBD)
  • 7.31.12 通用工具 <stdlib.h> (页: TBD)
  • 7.31.13 字符串处理 <string.h> (页: TBD)
  • K.3.6 通用工具 <stdlib.h> (页: TBD)
  • K.3.7 字符串处理 <string.h> (页: TBD)
  • C17 标准 (ISO/IEC 9899:2018):
  • 7.4 字符处理 <ctype.h> (页: TBD)
  • 7.8 整型格式转换 <inttypes.h> (页: TBD)
  • 7.22 通用工具 <stdlib.h> (页: TBD)
  • 7.24 字符串处理 <string.h> (页: TBD)
  • 7.31.2 字符处理 <ctype.h> (页: TBD)
  • 7.31.5 整型格式转换 <inttypes.h> (页: TBD)
  • 7.31.12 通用工具 <stdlib.h> (页: TBD)
  • 7.31.13 字符串处理 <string.h> (页: TBD)
  • K.3.6 通用工具 <stdlib.h> (页: TBD)
  • K.3.7 字符串处理 <string.h> (页: TBD)
  • C11 标准 (ISO/IEC 9899:2011):
  • 7.4 字符处理 <ctype.h> (页: 200-204)
  • 7.8 整型格式转换 <inttypes.h> (页: 217-220)
  • 7.22 通用工具 <stdlib.h> (页: 340-360)
  • 7.24 字符串处理 <string.h> (页: 362-372)
  • 7.31.2 字符处理 <ctype.h> (页: 455)
  • 7.31.5 整型格式转换 <inttypes.h> (页: 455)
  • 7.31.12 通用工具 <stdlib.h> (页: 456)
  • 7.31.13 字符串处理 <string.h> (页: 456)
  • K.3.6 通用工具 <stdlib.h> (页: 604-613)
  • K.3.7 字符串处理 <string.h> (页: 614-623)
  • C99 标准 (ISO/IEC 9899:1999):
  • 7.4 字符处理 <ctype.h> (页: 181-185)
  • 7.8 整型格式转换 <inttypes.h> (页: 198-201)
  • 7.20 通用工具 <stdlib.h> (页: 306-324)
  • 7.21 字符串处理 <string.h> (页: 325-334)
  • 7.26.2 字符处理 <ctype.h> (页: 401)
  • 7.26.4 整型格式转换 <inttypes.h> (页: 401)
  • 7.26.10 通用工具 <stdlib.h> (页: 402)
  • 7.26.11 字符串处理 <string.h> (页: 402)
  • C89/C90 标准 (ISO/IEC 9899:1990):
  • 4.3 字符处理 <ctype.h>
  • 4.10 通用工具 <stdlib.h>
  • 4.11 字符串处理 <string.h>
  • 4.13.2 字符处理 <ctype.h>
  • 4.13.7 通用工具 <stdlib.h>
  • 4.13.8 字符串处理 <string.h>

另请参阅

C++ 文档 关于 Null -terminated byte strings