C语言的字符处理函数库
来源:互联网 发布:jre windows i586.exe 编辑:程序博客网 时间:2024/05/21 17:42
C语言的字符处理函数库提供了两类函数,一类是字符测试函数,一类是字符大小写转换函数。尽管可以使用其他方式来实现这些功能,但建议使用这些库函数,因为这些函数有以下优点:
- 大多数由宏实现,在运行速度上进行了优化
- 支持任何字符集,可移植性好
- 支持程序国际化
字符测试函数
字符测试函数包括以下几个,每个测试函数都返回0或1,1表示测试成功,0表示测试失败。
int isalnum(int c)
c
是否是字母或数字 int isalpha(int c)
c
是否是字母 int iscntrl(int c)
c
是否是控制字符 int isdigit(int c)
c
是否是十进制数字 int isgraph(int c)
c
是否是可显示字符(除去空格) int islower(int c)
c
是否是小写字母 int isprint(int c)
c
是否是可显示字符(包括空格) int ispunct(int c)
c
是否是标点符号 int isspace(int c)
c
是否是空格(包括换页符、换行符、回车符、横向制表符和纵向制表符 int isupper(int c)
c
是否是大写字母 int isxdigit(int c)
c
是否是16进制数/************************************* * using_test_function.c * * * * 测试字符串测试函数,引自C语言程序 * * 设计-一种现代方法一书 * *************************************/#include <stdio.h>#include <ctype.h>#define TEST(f) printf(" %c ", f(*p) ? 'x' : ' ');int main(){ char *p; printf(" alnum alpha cntrl graph print space xdigit digit lower punct upper\n"); for(p = "azAZ0 !\t"; *p != '\0'; p++) { if (iscntrl(*p)) printf("\\x%02x:", *p); else printf(" %c ", *p); TEST(isalnum); TEST(isalpha); TEST(iscntrl); TEST(isgraph); TEST(isprint); TEST(isspace); TEST(isxdigit); TEST(isdigit); TEST(islower); TEST(ispunct); TEST(isupper); printf("\n"); } return 0;}
字符大小写转换函数
int tolower(int c);int toupper(int c);
tolower
函数返回字母c对应的小写字母,toupper
函数返回字母c对应的大写字母。
/****************************************** * using_lower_upper_transfer.c * * * * C语言中大小写转换函数测试,摘自C语言程 * * 序设计-一种现代方法一书 * ******************************************/#include <stdio.h>#include <ctype.h>int main(){ char *p; for (p = "aA0!"; *p != '\0'; p++) { printf("tolower('%c') is '%c'", *p, tolower(*p)); printf("toupper('%c'') is '%c'\n", *p, toupper(*p)); } return 0;}
参考文献
- K.N. King 著,吕秀峰 译. C语言程序设计-现代方法. 人民邮电出版社
0 0
- C语言的字符处理函数库
- C语言字符串处理函数库
- C语言的标准函数库
- C语言字符处理
- C语言 字符处理的两个问题
- 字符数组的处理—C语言
- C 常用的 Linux C 语言函数库
- 建立自己的C语言函数库
- 建立自己的C语言函数库
- 为c语言设计cgic的函数库
- C 字符串处理函数库
- C语言函数库
- c语言函数库
- C语言函数库
- C语言函数库分类
- c语言标准函数库
- C语言标准函数库
- 常用C语言函数库
- Servlets - Examples
- 黑马程序员——Java基础---IO(二)
- LeetCode Add Two Numbers
- 《C#入门经典(第6版)》读书笔记4_第四章:流程控制
- USACO 1.1 Milking Cows
- C语言的字符处理函数库
- Some projects cannot be imported because they already exist in the workspace
- 【LeetCode-面试算法经典-Java实现】【219-Contains Duplicate II(包含重复元素II)】
- 【LeetCode-面试算法经典-Java实现】【223-Rectangle Area(矩形区域)】
- 【LeetCode-面试算法经典-Java实现】【225-Implement Stack using Queues(用队列实现栈操作)】
- django 1.8 官方文档翻译: 3-1-1 URL调度器
- django 1.8 官方文档翻译: 3-1-3 Django 的快捷函数
- 线段树 POJ2777 Count Color 解题报告
- MySQL日志滚动