C语言标准库(1)—#include<ctype.h>
2014-11-25 21:49
381 查看
C语言标准库—#include<ctype.h>
2014/11/25 by jxlijunhao
在这个头文件中包含了对字符测试的函数,如检查一个字符串中某一个字符是否为数字,或者字母等,还包含了字符映射函数,如将大写字母映射成小写字母等。下面是通过查阅标准手册,记录的一些函数的用法,方便以后查找之用。
1,isalpha, 判断是否为字母
isdigit, 判断是否为数字
isxdigit :判断是否为 A~F, a~f
2,isalnum: 是字母或者数字
3,islower, 是否为小写,
isupper, 是否为大写
tolower, 转化为小写
touuper 转化为大写
4, isspace: 判断一个字符是否为空格
一个应用:将一个包含0~9,A~F的字符串(十六进制)转化成整型:
函数strchr ,是包含中<string.h>中的一个函数,其原型为
2014/11/25 by jxlijunhao
在这个头文件中包含了对字符测试的函数,如检查一个字符串中某一个字符是否为数字,或者字母等,还包含了字符映射函数,如将大写字母映射成小写字母等。下面是通过查阅标准手册,记录的一些函数的用法,方便以后查找之用。
1,isalpha, 判断是否为字母
isdigit, 判断是否为数字
#include<ctype.h> #include<stdio.h> int main() { int i=0; char str[]="c++11"; while (str[i]) { if (isalpha(str[i])) printf("character %c is alpha\n",str[i]); else if (isdigit(str[i])) printf("character %c is digit\n",str[i]); else printf("character %c is not alpha or digit\n",str[i]); i++; } }输出结果为:
character c is alpha character + is not alpha character + is not alpha character 1 is digit character 1 is digit
isxdigit :判断是否为 A~F, a~f
2,isalnum: 是字母或者数字
#include<ctype.h> #include<stdio.h> int main() { int i=0; int count=0; char str[]="c++11"; //统计一个字符串中是字母或者数字的个数 while (str[i]) { if (isalnum(str[i])) count++; i++; } printf("there are %d alpha or digit is %s",count,str); return 0; }输出结果:
3
3,islower, 是否为小写,
isupper, 是否为大写
tolower, 转化为小写
touuper 转化为大写
#include<ctype.h> #include<stdio.h> int main() { char str[]="I love ShangHai"; //将字符串中的小写字母转化为大写字母 int i=0; char c; while (str[i]) { c=str[i]; if (islower(c))str[i]=toupper(c); i++; } printf("%s\n",str); }
I LOVE SHANGHAI
4, isspace: 判断一个字符是否为空格
#include <stdio.h> #include <ctype.h> int main () { char c; int i=0; char str[]="Example sentence to test isspace\n"; while (str[i]) { c=str[i]; if (isspace(c)) c='\n'; putchar (c); i++; } return 0;输出为:
Example sentence to test isspace
一个应用:将一个包含0~9,A~F的字符串(十六进制)转化成整型:
#include <stdio.h> #include <string.h> #include <ctype.h> long atox(char *s) { char xdigs[]="0123456789ABCDEF"; long sum; while (isspace(*s))++s; for (sum=0L;isxdigit(*s);++s) { int digit=strchr(xdigs,toupper(*s))-xdigs; //地址相减 sum=sum*16+digit; } return sum; } int main () { char *str="21"; long l=atox(str); printf("%d\n",l); return 0; }
函数strchr ,是包含中<string.h>中的一个函数,其原型为
const char * strchr ( const char * str, int character );返回的是要查找的字符在字符串中第一次出现的位置,返回值是指向该字符的指针
相关文章推荐
- <ctype.h> C语言标准库
- <ctype.h> C语言标准库
- C语言中,#include <>和#include ""的区别和注意点
- c语言的头文件#include <limits.h>
- C语言专题——标准库<ctype.h>
- C语言中两种方式使用#include命令,#include <>与#include ””的区别是什么?
- linux标准库#include <unistd.h>与windows的#include <windows.h>(C语言开发)
- c语言:常用各种头文件的作用,如:#include &lt;stdlib.h&gt;
- C /C++标准库 - <cctype> (ctype.h)
- c语言中头文件#include <stdio.h>和#include "stdio.h"有什么区别?
- c语言字符类别测试库函数#include<ctype.h>
- C语言:#include <>与#include ””的区别
- C语言标准库概览详述[2]-字符判断测试<ctype.h>
- C语言 include <> ""
- #include<malloc.h>,<sys/types.h> ,<stdlib.h>,<string.h>及C语言头文件
- <float.h> - C语言标准库可以知道这种浮点型小数的信息
- <jsp:include>与include指令的比较
- #include   <> 和#include   " "的区别
- <jsp:include>与include指令的区别
- #include <iostream> 和#include <iostream.h> 以及include " "的区别