天天看点

C++ 头文件「ctype.h」里的:isalpha、islower、isupper、isalnum等函数1 isalpha()2 isalnum()3 islower()4 isupper()5 isdigit()6 tolower()7 toupper()

ctype.h是C标准函数库中的头文件,定义了一批C语言字符分类函数(C character classification functions),用于测试字符是否属于特定的字符类别,如字母字符、控制字符等等。既支持单字(Byte)字符,也支持宽字符。

1 isalpha()

isalpha()用来判断一个字符是否为字母,如果是字符则返回非零,否则返回零。

cout << isalpha('a');//返回非零
	cout << isalpha('2');//返回0
           
#include<stdio.h>
#include<ctype.h>
int main()
{
    char ch1='*';
    char ch2='a';
    if(isalpha(ch1)!=0)
        printf("%c is the ASCII alphabet\n",ch1);
    else
        printf("%c is not the ASCII alphabet\n",ch1);
    if(isalnum(ch2)!=0)
        printf("%c is the ASCII alphabet\n",ch2);
    else
        printf("%c is not the ASCII alphabet\n",ch2);
    return0;
}
           

2 isalnum()

isalnum()用来判断一个字符是否为数字或者字母,也就是说判断一个字符是否属于a~ z||A~ Z||0~9。

cout << isalnum('a');//输出非零
cout << isalnum('2');//非零
cout << isalnum('.');//零
           

3 islower()

islower()用来判断一个字符是否为小写字母,也就是是否属于a~z。

cout << islower('a');//非零
cout << islower('2');//输出0
cout << islower('A');//输出0
           

4 isupper()

isupper()和islower相反,用来判断一个字符是否为大写字母。

cout << isupper('a');//返回0
cout << isupper('2');//返回0
cout << isupper('A');//返回非零
           

5 isdigit()

判断一个字符是否是十进制数字,isdigit() 用来检测一个字符是否是十进制数字。十进制数字包括:0 1 2 3 4 5 6 7 8 9

返回值:返回值为非零(真)表示c是十进制数字,返回值为零(假)表示c不是十进制数字。

6 tolower()

将大写字母转换为小写字母,只有当参数 c 是一个大写字母,并且存在对应的小写字母时,这种转换才会发生。int tolower ( int c );

返回值:如果转换成功,那么返回与 c 对应的小写字母;如果转换失败,那么直接返回 c(值未变)。

注意,返回值为 int 类型,你可能需要隐式或者显式地将它转换为 char 类型。

7 toupper()

toupper() 函数用来将小写字母转换为大写字母。只有当参数 c 是一个小写字母,并且存在对应的大写字母时,这种转换才会发生。

返回值:如果转换成功,那么返回与 c 对应的大写字母;如果转换失败,那么直接返回 c(值未变)。

注意,返回值为 int 类型,你可能需要隐式或者显式地将它转换为 char 类型。

参考链接:

http://c.biancheng.net/ref/isalnum.html

继续阅读