目录
一.字符的类型分类
1.ASCII的定义:
2.ASCII的发生要素是:
3.ASCII的内容:
二.字符类型判别关系库函数
1.isdigit(),用于判别字符能否为数字。
2. isalpha(),用于判别字符能否为字母。
3. isalnum(),用于判别字符能否为数字或字母。
4. isspace(),用于判别字符能否为空格字符。
5. isupper()和 islower(),区分用于判别字符能否为大写字母和小写字母。
6. iscntrl(),用于判别字符能否为管理字符。
7. isprint(),用于判别字符能否为可打印字符。
8. ispunct(),用于判别字符能否为标点符号。
三.不经常使用库函数判别字符类型
1.ASCII码值判别法
判别能否是'a'字符:
判别能否是数字字符:
判别能否是小写字母字符:
判别能否是大写字母字符:
判别能否是字母字符:
判别能否是数字字符或字母字符:
判别能否为空格字符:
判别能否为管理字符:
判别能否为可打印字符:
判别能否为标点符号字符:
2.字符间接判别法
判别能否是'a'字符:
判别能否是数字字符:
判别能否是小写字母字符:
判别能否是大写字母字符:
判别能否是字母字符:
判别能否是数字字符或字母字符:
判别能否为空格字符:
判别能否为管理字符:
判别能否为可打印字符:
判别能否为标点符号字符:
一.字符的类型分类
1.ASCII的定义:
先来看看百度百科对 ASCII的定义 :
2.ASCII的发生要素是:
3.ASCII的内容:
既然有分类,那么也就有分类统计的需求,接上去咱们来学习一下该 如何判别字符的类型 。
二.字符类型判别关系库函数
1.isdigit(),用于判别字符能否为数字。
先来看cplusplus网站官网对isdigit()函数的解释:
上方咱们来看isdigit()函数的 原型 :
int isdigit ( int c );
咱们在编译器中测试经常使用一下该函数:
2. isalpha(),用于判别字符能否为字母。
先来看cplusplus网站官网对isalpha()函数的解释:
上方咱们来看isalpha()函数的原型:
int isalpha ( int c );
咱们试着在编译器中测试一下该函数:
3. isalnum(),用于判别字符能否为数字或字母。
先来看cplusplus网站官网对isalnum()函数的解释:
上方咱们来看isalnum()函数的原型:
int isalnum ( int c );
咱们试着在编译器中测试一下该函数:
4. isspace(),用于判别字符能否为空格字符。
先来看cplusplus网站官网对isspace()函数的解释:
上方咱们来看isspace()函数的原型:
int isspace ( int c );
它们的ASCII码值区分为:
代码 | 含意 | ASCII码值 |
---|---|---|
SPC | 空格符 | 32 |
TAB | 水平制表符 | 9 |
LF | 换行/新行 | 10 |
VT | 竖直制表符 | 11 |
FF | 换页/新页 | 12 |
CR | 回车 | 13 |
咱们试着在编译器中测试一下该函数:
5. isupper()和 islower(),区分用于判别字符能否为大写字母和小写字母。
咱们先来看cplusplus网站官网对isupper()函数的解释:
上方咱们来看isupper()函数的原型:
int isupper ( int c );
接上去再来看 islower() 函数:
上方咱们来看islower()函数的原型:
int islower ( int c );
6. iscntrl(),用于判别字符能否为管理字符。
先来看cplusplus网站官网对iscntrl()函数的解释:
上方咱们来看iscntrl()函数的原型:
int iscntrl ( int c );
7. isprint(),用于判别字符能否为可打印字符。
先来看cplusplus网站官网对isprint()函数的解释:
上方咱们来看isprint()函数的原型:
int isprint ( int c );
8. ispunct(),用于判别字符能否为标点符号。
先来看cplusplus网站官网对ispunct()函数的解释:
上方咱们来看i spunct()函数 的原型:
int ispunct ( int c );
三.不经常使用库函数判别字符类型
1.ASCII码值判别法
如:
判别能否是'a'字符:
int my_move(char ch)
{if(ch==97)return 1;elsereturn 0;
}
判别能否是数字字符:
int my_isdigit(char ch)
{if(ch>=48&&ch<=57)return 1;elsereturn 0;
}
判别能否是小写字母字符:
int my_islower(char ch)
{if(ch>=97&&ch<=122)return 1;elsereturn 0;
}
判别能否是大写字母字符:
int my_isupper(char ch)
{if(ch>=65&&ch<=90)return 1;elsereturn 0;
}
判别能否是字母字符:
int my_isalphA(char ch)
{if((ch>=65&&ch<=90)||(ch>=97&&ch<=122))return 1;elsereturn 0;
}
判别能否是数字字符或字母字符:
int my_isalnum(char ch)
{if((ch>=48&&ch<=57)||(ch>=97&&ch<=122)||(ch>=65&&ch<=90))return 1;elsereturn 0;
}
判别能否为空格字符:
int my_space(char ch)
{if((ch>=9&&ch<=13)||(ch==32))return 1;elsereturn 0;
}
判别能否为管理字符:
int my_cntrl(char ch)
{if((ch>=0&&ch<=31)||(ch==127))return 1;elsereturn 0;
}
判别能否为可打印字符:
int my_isprint(char ch)
{if(ch>=32&&ch<=126)return 1;elsereturn 0;
}
判别能否为标点符号字符:
int my_punct(char ch)
{if((ch>=33&&ch<=47)||(ch>=58&&ch<=64)||(ch>=91&&ch<=96)||(ch>=123&&ch<=126))return 1;elsereturn 0;
}
2.字符间接判别法
判别能否是'a'字符:
int my_move(char ch)
{if(ch=='a')return 1;elsereturn 0;
}
判别能否是数字字符:
int my_isdigit(char ch)
{if(ch>='0'&&ch<='9')return 1;elsereturn 0;
}
判别能否是小写字母字符:
int my_islower(char ch)
{if(ch>='a'&&ch<='z')return 1;elsereturn 0;
}
判别能否是大写字母字符:
int my_isupper(char ch)
{if(ch>='A'&&ch<='Z')return 1;elsereturn 0;
}
判别能否是字母字符:
int my_isalphA(char ch)
{if((ch>='A'&&ch<='Z')||(ch>='a'&&ch<='z'))return 1;elsereturn 0;
}
判别能否是数字字符或字母字符:
int my_isalnum(char ch)
{if((ch>='0'&&ch<='9')||(ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z'))return 1;elsereturn 0;
}
判别能否为空格字符:
int my_space(char ch)
{if ((ch >='\t'&&ch <= '\n') || (ch == ' '))return 1;elsereturn 0;
}
判别能否为管理字符:
int my_cntrl(char ch)
{if((ch>='\0'&&ch<='\x1F')||(ch=='\x7F'))return 1;elsereturn 0;
}
判别能否为可打印字符:
int my_isprint(char ch)
{if(ch>=' '&&ch<='~')return 1;elsereturn 0;
}
判别能否为标点符号字符:
int my_punct(char ch)
{if((ch>='!'&&ch<='/')||(ch>=':'&&ch<='@')||(ch>='['&&ch<='`')||(ch>='{'&&ch<='~'))return 1;elsereturn 0;
}
结语
宿愿这篇 字符类型的三种判别方法 的引见到能对大家有所协助,欢迎大佬们留言或私信与我交换.
学海漫浩浩,我亦是行人!大家一同窗习,一同提高!