📅  最后修改于: 2023-12-03 14:39:58.300000             🧑  作者: Mango
在C++中,有一个非常有用的标准函数库,叫作cctype。cctype库中包括了一系列的函数,用于判断一个字符的类型。在程序中,我们经常需要将字符转换为小写或者大写,或者判断一个字符是否为数字或字母等等。本文将为大家介绍cctype库中常用的一些函数。
isalpha函数用于判断一个字符是否为字母,包括大写字母和小写字母。
#include <cctype>
#include <iostream>
int main(){
char ch = 'a';
if(isalpha(ch)){
std::cout<<"It's a letter!"<<std::endl;
}else{
std::cout<<"It's not a letter!"<<std::endl;
}
return 0;
}
输出结果:
It's a letter!
isdigit函数用于判断一个字符是否为数字。
#include <cctype>
#include <iostream>
int main(){
char ch = '9';
if(isdigit(ch)){
std::cout<<"It's a digit!"<<std::endl;
}else{
std::cout<<"It's not a digit!"<<std::endl;
}
return 0;
}
输出结果:
It's a digit!
isalnum函数用于判断一个字符是否为字母或数字。
#include <cctype>
#include <iostream>
int main(){
char ch = '?';
if(isalnum(ch)){
std::cout<<"It's a letter or digit!"<<std::endl;
}else{
std::cout<<"It's not a letter or digit!"<<std::endl;
}
return 0;
}
输出结果:
It's not a letter or digit!
islower函数用于判断一个字符是否为小写字母,isupper函数用于判断一个字符是否为大写字母。
#include <cctype>
#include <iostream>
int main(){
char ch = 'A';
if(islower(ch)){
std::cout<<"It's a lower case letter!"<<std::endl;
}else if(isupper(ch)){
std::cout<<"It's an upper case letter!"<<std::endl;
}else{
std::cout<<"It's not a letter!"<<std::endl;
}
return 0;
}
输出结果:
It's an upper case letter!
tolower函数用于将一个大写字母转换成小写字母,toupper函数用于将一个小写字母转换成大写字母。
#include <cctype>
#include <iostream>
int main(){
char ch = 'B';
std::cout<<"Before tolower, ch is "<<ch<<std::endl; // 输出:Before tolower, ch is B
ch = tolower(ch);
std::cout<<"After tolower, ch is "<<ch<<std::endl; // 输出:After tolower, ch is b
char ch2 = 'y';
std::cout<<"Before toupper, ch2 is "<<ch2<<std::endl; // 输出:Before toupper, ch2 is y
ch2 = toupper(ch2);
std::cout<<"After toupper, ch2 is "<<ch2<<std::endl; // 输出:After toupper, ch2 is Y
return 0;
}
输出结果:
Before tolower, ch is B
After tolower, ch is b
Before toupper, ch2 is y
After toupper, ch2 is Y
除了以上介绍的这些函数,cctype库还包括了其他一些函数,如isspace函数用于判断一个字符是否为空格字符,isprint函数用于判断一个字符是否可以被打印出来等等。通过使用这些函数,我们可以更方便地对字符进行处理。