C 语言 ctype.h

28 Aug 2024 | 5 分钟阅读

Ctype.h/cctype> 包含内置函数,用于在 C/C++ 中处理字符,就像 string.h 头文件包含内置函数用于在 C/C++ 中处理字符串一样。

有两种字符

  • 可打印字符: 显示在终端上的字符称为可打印字符。
  • 控制字符: 用于执行特定操作的字符。

字符函数应仅接受整数类型的参数。如果提供的参数不是整数而是字符,则会将字符转换为具有相应 ASCII 值的整数。

对于常规字符,ctype.h/cctype> 头文件下使用以下列出的函数。对于 wchar_t 类型的字符,则使用宽字符函数。

序号。函数描述返回值
1.isalnum()通过此功能,可以识别字母数字字符。如果提供的参数是非字母数字字符,则返回 0。
如果提供的参数是字母数字字符,则返回非零值。
2.isalpha()此函数区分字母和其他字符。如果提供的参数不是字母,则返回 0。
如果提供的输入是字母,则返回非零结果。
3.isblank()此方法区分空格和其他字符。如果提供的输入不是空格,则返回 0。
如果提供的参数是空格,则返回非零值。
4.iscntrl()此函数可识别以下控制字符:\n、\b、\t 和 \r。如果提供的参数不是控制字符,则返回 0。
如果传递的参数是控制字符,则返回非零值。
5.isdigit()此函数可识别基于字符的数字。如果传递的输入不是数字,则返回 0。
如果提供的参数是数字,则返回非零值。
6.islower()此函数用于识别小写字母。如果提供的参数不是小写字母,则返回 0。
如果提供的参数是小写字母,则返回非零值。
7.isprint()此函数可识别可打印字符。如果提供的参数是不可打印字符,则返回 0。
如果提供的参数是可打印字符,则返回非零值。
8.ispunct()此函数可识别标点符号字符(既非字母数字也非空格的字符)。如果提供的参数不是标点符号字符,则返回 0。
如果传递的参数是标点符号字符,则返回非零值。
9.isspace()此函数用于识别空白字符。如果提供的参数不是空白字符,则返回 0。
如果传递的参数是空白字符,则返回非零值。
10.isupper()此函数可识别大写字母。如果提供的参数不是大写字母,则返回 0。
如果提供的参数是大写字母,则返回非零结果。
11.isxdigit()此函数可识别十六进制数字。如果提供的参数不是十六进制数字,则返回 0。
如果提供的参数是十六进制数字,则返回非零值。
12.tolower()此函数将大写字母转换为小写字母。返回相应大写字母的小写等效字符。
13.toupper()此函数将小写字母转换为大写字母。返回相应小写字母的大写对应字符。

以下是一些使用上述部分函数的示例

示例 1:以下程序计算字母和数字

输出

The number of alphabets are 23
The number of digits are 6
………………………………………………..
Process executed in 1.11 seconds
Press any key to continue.

说明

在上面的 C 语言程序示例中,我们演示了 isalpha() 和 isdigit() 函数的使用,它们将计算字母和数字的数量。

示例 2:以下程序计算字母的大小写字母并更改其大小写

输出

No. of uppercase alphabets are 3
No. of lowercase alphabets are 21
hEELLO, wELCOME TO JAVAtPOINT
...........................................................
Process executed in 1.11 seconds
Press any key to continue

说明

在上面的 C 语言程序示例中,我们演示了 isupper() 和 islower() 的使用,它们将计算字母的大小写字母并更改其大小写。

示例 3:以下程序为打印的每个单词创建一个新行

输出

Hi
Everyone.
Welcome
to
javaTpoint.com
............................
Process executed in 1.11 seconds
Press any key to continue.

说明

在上面的 C 语言程序示例中,我们演示了 isblank() 函数的使用,它为打印的每个单词创建一个新行。