首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

C语言标准库系列之

C 标准库的ctype.h头文件提供了一些函数,可用于测试和映射字符。

这些函数接受int作为参数,它的值必须是 EOF 或表示为一个无符号字符。

如果参数 c 满足描述的条件,则这些函数返回非零(true)。如果参数 c 不满足描述的条件,则这些函数返回零。

库函数

下面列出了头文件 ctype.h 中定义的函数:

实例

下面的实例演示了 isalnum() 函数的用法。

#include

#include

intmain()

{

intvar1='d';

intvar2='2';

intvar3='\t';

intvar4=' ';

if(isalnum(var1) )

{

printf("var1 = |%c| 是字母数字\n",var1);

}

else

{

printf("var1 = |%c| 不是字母数字\n",var1);

}

if(isalnum(var2) )

{

printf("var2 = |%c| 是字母数字\n",var2);

}

else

{

printf("var2 = |%c| 不是字母数字\n",var2);

}

if(isalnum(var3) )

{

printf("var3 = |%c| 是字母数字\n",var3);

}

else

{

printf("var3 = |%c| 不是字母数字\n",var3);

}

if(isalnum(var4) )

{

printf("var4 = |%c| 是字母数字\n",var4);

}

else

{

printf("var4 = |%c| 不是字母数字\n",var4);

}

return();

}

让我们编译并运行上面的程序,这将产生以下结果:

var1=|d|是字母数字

var2=|2|是字母数字

var3=||不是字母数字

var4=||不是字母数字

下面的实例演示了 isalpha() 函数的用法。

#include

#include

int main()

{

int var1 = 'd';

int var2 = '2';

int var3 = '\t';

int var4 = ' ';

if( isalpha(var1) )

{

printf("var1 = |%c| 是一个字母\n", var1 );

}

else

{

printf("var1 = |%c| 不是一个字母\n", var1 );

}

if( isalpha(var2) )

{

printf("var2 = |%c| 是一个字母\n", var2 );

}

else

{

printf("var2 = |%c| 不是一个字母\n", var2 );

}

if( isalpha(var3) )

{

printf("var3 = |%c| 是一个字母\n", var3 );

}

else

{

printf("var3 = |%c| 不是一个字母\n", var3 );

}

if( isalpha(var4) )

{

printf("var4 = |%c| 是一个字母\n", var4 );

}

else

{

printf("var4 = |%c| 不是一个字母\n", var4 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |d| 是一个字母

var2 = |2| 不是一个字母

var3 = | | 不是一个字母

var4 = | | 不是一个字母

下面的实例演示了 iscntrl() 函数的用法。

#include

#include

intmain()

{

inti=,j=;

charstr1[]="all \a about \t programming";

charstr2[]="w3cschool \n tutorials";

/* 输出字符串直到控制字符 \a */

while(!iscntrl(str1[i]) )

{

putchar(str1[i]);

i++;

}

/* 输出字符串直到控制字符 \n */

while(!iscntrl(str2[j]) )

{

putchar(str2[j]);

j++;

}

return();

}

让我们编译并运行上面的程序,这将产生以下结果:

allw3cschool

下面的实例演示了 isdigit() 函数的用法。

#include

#include

int main()

{

int var1 = 'h';

int var2 = '2';

if( isdigit(var1) )

{

printf("var1 = |%c| 是一个数字\n", var1 );

}

else

{

printf("var1 = |%c| 不是一个数字\n", var1 );

}

if( isdigit(var2) )

{

printf("var2 = |%c| 是一个数字\n", var2 );

}

else

{

printf("var2 = |%c| 不是一个数字\n", var2 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |h| 不是一个数字

var2 = |2| 是一个数字

下面的实例演示了 isgraph() 函数的用法。

#include

#include

int main()

{

int var1 = '3';

int var2 = 'm';

int var3 = ' ';

if( isgraph(var1) )

{

printf("var1 = |%c| 是可打印的\n", var1 );

}

else

{

printf("var1 = |%c| 是不可打印的\n", var1 );

}

if( isgraph(var2) )

{

printf("var2 = |%c| 是可打印的\n", var2 );

}

else

{

printf("var2 = |%c| 是不可打印的\n", var2 );

}

if( isgraph(var3) )

{

printf("var3 = |%c| 是可打印的\n", var3 );

}

else

{

printf("var3 = |%c| 是不可打印的\n", var3 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |3| 是可打印的

var2 = |m| 是可打印的

var3 = | | 是不可打印的

下面的实例演示了 islower() 函数的用法。

#include

#include

int main()

{

int var1 = 'Q';

int var2 = 'q';

int var3 = '3';

if( islower(var1) )

{

printf("var1 = |%c| 是小写字母\n", var1 );

}

else

{

printf("var1 = |%c| 不是小写字母\n", var1 );

}

if( islower(var2) )

{

printf("var2 = |%c| 是小写字母\n", var2 );

}

else

{

printf("var2 = |%c| 不是小写字母\n", var2 );

}

if( islower(var3) )

{

printf("var3 = |%c| 是小写字母\n", var3 );

}

else

{

printf("var3 = |%c| 不是小写字母\n", var3 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |Q| 不是小写字母

var2 = |q| 是小写字母

var3 = |3| 不是小写字母

下面的实例演示了 isprint() 函数的用法。

#include

#include

int main()

{

int var1 = 'k';

int var2 = '8';

int var3 = '\t';

int var4 = ' ';

if( isprint(var1) )

{

printf("var1 = |%c| 是可打印的\n", var1 );

}

else

{

printf("var1 = |%c| 是不可打印的\n", var1 );

}

if( isprint(var2) )

{

printf("var2 = |%c| 是可打印的\n", var2 );

}

else

{

printf("var2 = |%c| 是不可打印的\n", var2 );

}

if( isprint(var3) )

{

printf("var3 = |%c| 是可打印的\n", var3 );

}

else

{

printf("var3 = |%c| 是不可打印的\n", var3 );

}

if( isprint(var4) )

{

printf("var4 = |%c| 是可打印的\n", var4 );

}

else

{

printf("var4 = |%c| 是不可打印的\n", var4 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |k| 是可打印的

var2 = |8| 是可打印的

var3 = || 是不可打印的

var4 = | | 是可打印的

下面的实例演示了 ispunct() 函数的用法。

#include

#include

int main()

{

int var1 = 't';

int var2 = '1';

int var3 = '/';

int var4 = ' ';

if( ispunct(var1) )

{

printf("var1 = |%c| 是标点符号字符\n", var1 );

}

else

{

printf("var1 = |%c| 不是标点符号字符\n", var1 );

}

if( ispunct(var2) )

{

printf("var2 = |%c| 是标点符号字符\n", var2 );

}

else

{

printf("var2 = |%c| 不是标点符号字符\n", var2 );

}

if( ispunct(var3) )

{

printf("var3 = |%c| 是标点符号字符\n", var3 );

}

else

{

printf("var3 = |%c| 不是标点符号字符\n", var3 );

}

if( ispunct(var4) )

{

printf("var4 = |%c| 是标点符号字符\n", var4 );

}

else

{

printf("var4 = |%c| 不是标点符号字符\n", var4 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |t| 不是标点符号字符

var2 = |1| 不是标点符号字符

var3 = |/| 是标点符号字符

var4 = | | 不是标点符号字符

下面的实例演示了 isspace() 函数的用法。

#include

#include

int main()

{

int var1 = 't';

int var2 = '1';

int var3 = ' ';

if( isspace(var1) )

{

printf("var1 = |%c| 是空白字符\n", var1 );

}

else

{

printf("var1 = |%c| 不是空白字符\n", var1 );

}

if( isspace(var2) )

{

printf("var2 = |%c| 是空白字符\n", var2 );

}

else

{

printf("var2 = |%c| 不是空白字符\n", var2 );

}

if( isspace(var3) )

{

printf("var3 = |%c| 是空白字符\n", var3 );

}

else

{

printf("var3 = |%c| 不是空白字符\n", var3 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |t| 不是空白字符

var2 = |1| 不是空白字符

var3 = | | 是空白字符

下面的实例演示了 isupper() 函数的用法。

#include

#include

int main()

{

int var1 = 'M';

int var2 = 'm';

int var3 = '3';

if( isupper(var1) )

{

printf("var1 = |%c| 是大写字母\n", var1 );

}

else

{

printf("var1 = |%c| 不是大写字母\n", var1 );

}

if( isupper(var2) )

{

printf("var2 = |%c| 是大写字母\n", var2 );

}

else

{

printf("var2 = |%c| 不是大写字母\n", var2 );

}

if( isupper(var3) )

{

printf("var3 = |%c| 是大写字母\n", var3 );

}

else

{

printf("var3 = |%c| 不是大写字母\n", var3 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |M| 是大写字母

var2 = |m| 不是大写字母

var3 = |3| 不是大写字母

下面的实例演示了 isxdigit() 函数的用法。

#include

#include

int main()

{

char var1[] = "tuts";

char var2[] = "0xE";

if( isxdigit(var1[0]) )

{

printf("var1 = |%s| 是十六进制数字\n", var1 );

}

else

{

printf("var1 = |%s| 不是十六进制数字\n", var1 );

}

if( isxdigit(var2[0] ))

{

printf("var2 = |%s| 是十六进制数字\n", var2 );

}

else

{

printf("var2 = |%s| 不是十六进制数字\n", var2 );

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

var1 = |tuts| 不是十六进制数字

var2 = |0xE| 是十六进制数字

标准库还包含了两个转换函数,它们接受并返回一个 "int"

下面的实例演示了 tolower() 函数的用法。

#include

#include

int main()

{

int i = 0;

char c;

char str[] = "W3CSCHOOL TUTORIALS";

while( str[i] )

{

putchar(tolower(str[i]));

i++;

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

w3cschool tutorials

下面的实例演示了 toupper() 函数的用法。

#include

#include

int main()

{

int i = 0;

char c;

char str[] = "W3Cschool Tutorials";

while(str[i])

{

putchar (toupper(str[i]));

i++;

}

return(0);

}

让我们编译并运行上面的程序,这将产生以下结果:

W3CSCHOOL TUTORIALS

字符类

最编程,懂编程,更懂世界!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20200225A082RV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券