空终止字节字符串

来自cppreference.com
< c‎ | string


空终止字节字符串(NTBS)是非零字节的序列后随一个零值字节(空终止字符)。字节字符串中的每个字节都是一个字符在某个字符集中的编码。例如,字符数组 {'\x63','\x61','\x74','\0'} 是一个以 ASCII 编码表示字符串 "cat" 的 NTBS。

函数

字符分类
在标头 <ctype.h> 定义
检查一个字符是否是字母或数字
(函数)
检查一个字符是否是字母
(函数)
检查一个字符是否是小写字母
(函数)
检查一个字符是否是大写字母
(函数)
检查字符是否为数字
(函数)
检查一个字符是否是十六进制的字符
(函数)
检查一个字符是否是控制字符
(函数)
检查一个字符是否是图形字符
(函数)
检查一个字符是否是空白字符
(函数)
检查一个字符是否是空格字符
(函数)
检查一个字符是否是可打印字符
(函数)
检查一个字符是否是标点字符
(函数)
字符操作
将字符转换成小写
(函数)
将字符转换成大写
(函数)

注意:将来可能添加以 tois 后随小写字母起始的新增函数到头文件 ctype.h,故包含该头文件的程序中不应定义这些函数。

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 \172\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_tuintmax_t
(函数)
字符串操作
在标头 <string.h> 定义
复制一个字符串给另一个
(函数)
从一个字符串复制一定数量的字符到另一个
(函数)
连接两个字符串
(函数)
连接两个字符串的一定数量字符
(函数)
变换字符串,使得 strcmp 会产生同 strcoll 的结果
(函数)
(C23)
分配字符串的副本
(函数)
分配拥有指定大小的字符串副本
(函数)
字符串检验
在标头 <string.h> 定义
返回给定字符串的长度
(函数)
比较两个字符串
(函数)
比较两个字符串的一定数量字符
(函数)
比较两个字符串,根据当前本地环境
(函数)
查找字符的首次出现
(函数)
查找字符的最后一次出现
(函数)
返回由另一个字符串中的字符分割的最大起始段长度
(函数)
返回另一个字符串所不具有的字符分割的最大起始段长度
(函数)
查找一个字符串中的任意一个字符在另一个字符串中的首个位置
(函数)
查找子串字符的首次出现
(函数)
查找字节字符串中的下一个记号
(函数)
字符数组操作
在标头 <string.h> 定义
在数组中搜索字符的首次出现
(函数)
比较两块缓冲区
(函数)
以字符填充缓冲区
(函数)
将一个缓冲区复制到另一个
(函数)
将一个缓冲区移动到另一个
(函数)
复制一个缓冲区到另一个,在指定的分隔符后停止
(函数)
杂项
在标头 <string.h> 定义
返回给定错误码的文本版本
(函数)

引用

  • C11 标准(ISO/IEC 9899:2011):
  • 7.4 Character handling <ctype.h> (第 200-204 页)
  • 7.8 Format conversion of integer types <inttypes.h> (第 217-220 页)
  • 7.22 General utilities <stdlib.h> (第 340-360 页)
  • 7.24 String handling <string.h> (第 362-372 页)
  • 7.31.2 Character handling <ctype.h> (第 455 页)
  • 7.31.5 Format conversion of integer types <inttypes.h> (第 455 页)
  • 7.31.12 General utilities <stdlib.h> (第 456 页)
  • 7.31.13 String handling <string.h> (第 456 页)
  • K.3.6 General utilities <stdlib.h> (第 604=613 页)
  • K.3.7 String handling <string.h> (第 614-623 页)
  • C99 标准(ISO/IEC 9899:1999):
  • 7.4 Character handling <ctype.h> (第 181-185 页)
  • 7.8 Format conversion of integer types <inttypes.h> (第 198-201 页)
  • 7.20 General utilities <stdlib.h> (第 306-324 页)
  • 7.21 String handling <string.h> (第 325-334 页)
  • 7.26.2 Character handling <ctype.h> (第 401 页)
  • 7.26.4 Format conversion of integer types <inttypes.h> (第 401 页)
  • 7.26.10 General utilities <stdlib.h> (第 402 页)
  • 7.26.11 String handling <string.h> (第 402 页)
  • C89/C90 标准(ISO/IEC 9899:1990):
  • 4.3 CHARACTER HANDLING <ctype.h>
  • 4.10 GENERAL UTILITIES <stdlib.h>
  • 4.11 STRING HANDLING <string.h>
  • 4.13.2 Character handling <ctype.h>
  • 4.13.7 General utilities <stdlib.h>
  • 4.13.8 String handling <string.h>

参阅