字符分类函数我们平时使用不多,我们一般考自定义函数来解决出现的问题,但是,当我们完美认识字符分类函数后,会大大节省我们写这段代码的时间,也会使代码更加简洁,下面就来更为认识一些字符分类函数吧!
目录
1.1一些字符分类函数
以下函数,
如果它的参数符合下列条件就返回真(指非0数字),否则返回假(指0)。
它们的使用格式都是 int 分类函数(int 参数)。
1.incntrl:判断是否为控制字符(任何控制字符)
2.isspace:判断是否为空白字符,比如空格‘ ’,换页‘\f’,换行'\n',回车'\r',制表符'\t',垂直制表符'\v'
3.isdigit:判断是否为十进制数字0—9
4.isxdigit:判断是否为十六进制数字,包括所有十进制数字,小写字母a—f,大写字母A—F
5.islower:判断是否为小写字母a—z
6.isupper:判断是否为大写字母A—Z
7.isalpha:判断是否为小写字母a—z或者大写字母A—Z
8.isalnum:判断是否为小写字母a—z或者大写字母A—Z或者十进制数字0—9
9.ispunct:判断是否为标点符号或者任何不属于字母或者数字的图形符号(可打印)
10.isgraph:判断是否为图形符号
11.isprint:判断是否为可打印字符,包括图形字符和空白字符
如果还是有疑虑,可以去以前推荐过的网站
1.2代码示例
我们简单举个例子,来帮助大家更好的理解:
islower
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> //islower判断是否为小写字母f int main() { int ret = islower('f'); printf("ret=%d\n", ret); return 0; }
这里我们可以看到它返回了一个真值,即非0值
我们假若把参数改为大写F,此时就会得到一个假值,即0
#define _CRT_SECURE_NO_WARNINGS 1 #include<stdio.h> //islower判断是否为小写字母f int main() { int ret = islower('F'); printf("ret=%d\n", ret); return 0; }
2.1.字符转换函数
字符转换函数有两个,分别是:
以下俩个函数的使用格式都是 int 转换函数(int 参数)
1.toupper:把小写字符转换为大写字符,即a—A
2.tolower:把大写字符转化为小写字符,即A—a
2.2代码示例
我们在使用这个函数之前首先要明白,这个函数不会直接改变数组内容,也就是值传递,形式参数。
我们用tolower来说明:
//tolower小写字母转大写字母 int main() { char arr1[] = "I have AN AppLe!"; int i = 0; while (arr1[i]) { arr1[i] = tolower(arr1[i]); printf("%c", arr1[i]); i++; } return 0; }
这样,字符串里所以的大写字母就都改为了小写字母。
好了,其实这种函数我们平时用到的不多,但还是应该有所了解,这样才是一个合格的程序员,难道不是吗?