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

ctype.h的C标准库的头文件里提供的声明几个实用的函数測试和字符映射。

yiibai.com

全部的功能都接受int作为參数,其值必须是EOF或为unsigned char表示。

全部函数返回的參数c非零(true),假设满足条件。

否则返回0。

库函数

下面是在头文件ctype.h中定义的函数:

S.N. 函数及说明
1 int isalnum(int c) yiibai.com 

该函数检查传递的字符是否是字母数字。
2 int isalpha(int c)

该函数是否传递的字符是字母。
3 int iscntrl(int c) 

该函数是否传递的字符是控制字符。
4 int isdigit(int c)

该函数是否传递的字符是十进制数字。
5 int isgraph(int c) 

该函数是否传递的字符的图形表示,使用的语言环境。
6 int islower(int c)

该函数检查传递的字符是否是小写字母。
7 int isprint(int c) yiibai.com 

该函数检查传递的字符是否是可打印的。

8 int ispunct(int c)

该函数检查传递的字符是否是标点符号。
9 int isspace(int c) 

该函数检查传递的字符是否是空白。
10 int isupper(int c)

该函数检查传递的字符是否是大写字母。
11 int isxdigit(int c) 

该函数检查传递的字符是否是十六进制数字。

该库还包括两个转换函数。也接受并返回一个“整数”

S.N. 函数及说明
1 int tolower(int c) 

这个函数转换大写字母为小写。

2 int toupper(int c)

这个函数小写字母转换为大写。



 ctype.h里的函数

  1 字符測试函数

  1> 函数原型均为int isxxxx(int)

  2> 參数为int, 不论什么实參均被提升成整型

  3> 仅仅能正确处理处于[0, 127]之间的值

  2 字符映射函数

  1> 函数原型为int toxxxx(int)

  2> 对參数进行检測, 若符合范围则转换, 否则不变

  int tolower(int); 'A'~'Z' ==> 'a'~'z'

  int toupper(int); 'a'~'z' ==> 'A'~'Z'

  @函数名称: isalpha

  函数原型: int isalpha(int ch);

  函数功能: 检查ch是否是字母.

  函数返回: 是字母返回非0 ,否则返回 0.

  參数说明:

  所属文件 <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  int main()

  {

  char ch1='*';

  char ch2='a';

  if(isalnum(ch1)!=0)

  printf("%c is the ASCII number or alphebet\n",ch1);

  else

  printf("%c is not the ASCII number nor alphebet\n",ch1);

  if(isalnum(ch2)!=0)

  printf("%c is the ASCII number or alphebet\n",ch2);

  else

  printf("%c is not the ASCII number nor alphebet\n",ch2);

  return 0;

  }

  @函数名称: iscntrl

  函数原型: int iscntrl(int ch);

  函数功能: 检查ch是否控制字符(其ASCII码在0和0x1F之间,数值为 0-31).

  函数返回: 是返回 1,否则返回 0.

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  char chars[]={'A',0x09,'Z'};

  #define SIZE sizeof(chars)/sizeof(char)

  int main()

  {

  int i;

  for(i=0;i<SIZE;i++){

  printf("Char %c is %sa Control character\n",

  chars[i],(iscntrl(chars[i]))?"":"not");

  }

  return 0;

  }

  @函数名称: isdigit

  函数原型: int isdigit(int ch);

  函数功能: 检查ch是否是数字(0-9)

  函数返回: 是返回1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  int main()

  {

  char ch1='1';

  char ch2='a';

  if(isdigit(ch1)!=0)

  printf("%c is the ASCII number\n",ch1);

  else

  printf("%c is not the ASCII number\n",ch1);

  if(isdigit(ch2)!=0)

  printf("%c is the ASCII number\n",ch2);

  else

  printf("%c is not the ASCII number\n",ch2);

  return 0;

  }

  @函数名称: isgraph

  函数原型: int isgraph(int ch);

  函数功能: 检查ch是否可显示字符(其ASCII码在ox21到ox7E之间),不包含空格

  函数返回: 是返回1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  int main()

  {

  char ch1=' ';

  char ch2='a';

  if(isgraph(ch1)!=0)

  printf("%c is the ASCII printable character\n",ch1);

  else

  printf("%c is not the ASCII printable character\n",ch1);

  if(isgraph(ch2)!=0)

  printf("%c is the ASCII printable character\n",ch2);

  else

  printf("%c is not the ASCII printable character\n",ch2);

  return 0;

  }

  @函数名称: islower

  函数原型: int islower(int ch);

  函数功能: 检查ch是否小写字母(a-z)

  函数返回: 是返回1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  char chars[]={'A','a','z','Z'};

  #define SIZE sizeof(chars)/sizeof(char)

  int main()

  {

  int i;

  for(i=0;i<SIZE;i++){

  printf("Char %c is %sa lowercase character\n",chars[i],(islower(chars[i]))?"":"not");

  }

  return 0;

  }

  @函数名称: tolower

  函数原型: int tolower(int ch);

  函数功能: 将ch字符转换为小写字母

  函数返回: 返回ch所代表的字符的小写字母

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <stdlib.h>

  #include <ctype.h>

  int main()

  {

  char x='a', y='b',z='A',w='*';

  printf("Character %c to lower is %c\n",x,tolower(x));

  printf("Character %c to lower is %c\n",y,tolower(y));

  printf("Character %c to lower is %c\n",z,tolower(z));

  printf("Character %c to lower is %c\n",w,tolower(w));

  return 0;

  }

  @函数名称: toupper

  函数原型: int toupper(int ch);

  函数功能: 将ch字符转换成大写字母

  函数返回: 与ch对应的大写字母

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <stdlib.h>

  #include <ctype.h>

  int main()

  {

  char x='a', y='b',z='A',w='*';

  printf("Character %c to upper is %c\n",x,toupper(x));

  printf("Character %c to upper is %c\n",y,toupper(y));

  printf("Character %c to upper is %c\n",z,toupper(z));

  printf("Character %c to upper is %c\n",w,toupper(w));

  return 0;

  }

  @函数名称: isalnum

  函数原型: int isalnum(int ch);

  函数功能: 检查ch是否是字母或数字

  函数返回: 是字母或数字返回1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  int main()

  {

  char ch1 ='*';

  char ch2 ='a';

  if(isalnum(ch1)!=0)

  printf("%c is the ASCII number or alphebet\n",ch1);

  else

  printf("%c is not the ASCII number nor alphebet\n",ch1);

  if(isalnum(ch2)!=0)

  printf("%c is the ASCII number or alphebet\n",ch2);

  else

  printf("%c is not the ASCII number nor alphebet\n",ch2);

  return 0;

  }

  @函数名称: isprint

  函数原型: int isprint(int ch);

  函数功能: 检查ch是否是可打印字符(包含空格),其ASCII码在ox20到ox7E之间

  函数返回: 是返回1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  int main()

  {

  char ch1='\n';

  char ch2='a';

  if(isprint(ch1)!=0)

  printf("%c is the ASCII printable charcater\n",ch1);

  else

  printf("%c is not the ASCII printable charcater\n",ch1);

  if(isprint(ch2)!=0)

  printf("%c is the ASCII printable charcater\n",ch2);

  else

  printf("%c is not the ASCII printable charcater\n",ch2);

  return 0;

  }

  @函数名称: ispunct

  函数原型: int ispunct(int ch);

  函数功能: 检查ch是否是标点字符(不包含空格),即除字母,数字和空格以外的全部可打印字符

  函数返回: 是返回1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include<ctype.h>

  int main()

  {

  char ch1=',';

  char ch2='a';

  if(ispunct(ch1)!=0)

  printf("%c is the ASCII punct\n",ch1);

  else

  printf("%c is not the ASCII punct\n",ch1);

  if(ispunct(ch2)!=0)

  printf("%c is the ASCII punct\n",ch2);

  else

  printf("%c is not the ASCII punct\n",ch2);

  return 0;

  }

  @函数名称: isspace

  函数原型: int isspace(int ch);

  函数功能: 检查ch是否是空格符和跳格符(控制字符)或换行符

  函数返回: 是返回1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  int main()

  {

  char ch1=' ';

  char ch2='a';

  if(isspace(ch1)!=0)

  printf("%c is the space charcater\n",ch1);

  else

  printf("%c is not the space charcater\n",ch1);

  if(isspace(ch2)!=0)

  printf("%c is the space charcater\n",ch2);

  else

  printf("%c is not the space charcater\n",ch2);

  return 0;

  }

  @函数名称: isupper

  函数原型: int isupper(int ch);

  函数功能: 检查ch是否是大写字母(A-Z)

  函数返回: 是返回1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  char chars[]={'A','a','z','Z'};

  #define SIZE sizeof(chars)/sizeof(char)

  int main()

  {

  int i;

  for(i=0;i<SIZE;i++){

  printf("Char %c is %san uppercase character\n",

  chars[i],(isupper(chars[i]))?"":"not");

  }

  return 0;

  }

  @函数名称: isxdigit

  函数原型: int isxdigit(int ch);

  函数功能: 检查ch是否是一个16进制数学字符(即0-9,或A-F,或a-f)

  函数返回: 是返回 1,否则返回0

  參数说明:

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  int main()

  {

  char ch1='1';

  char ch2='a';

  if(isxdigit(ch1)!=0)

  printf("%c is the ASCII hexadecimal number\n",ch1);

  else

  printf("%c is not the ASCII hexadecimal number\n",ch1);

  if(isxdigit(ch2)!=0)

  printf("%c is the ASCII hexadecimal number\n",ch2);

  else

  printf("%c is not the ASCII hexadecimal number\n",ch2);

  return 0;

  }

  @函数名称: isascii

  函数原型: int isascii(int ch)

  函数功能: 測试參数是否是ASCII码0-127

  函数返回: 非零-是。0-不是

  參数说明: ch-被測參数

  所属文件: <ctype.h>

  #include <stdio.h>

  #include <ctype.h>

  char chars[]={'A',0x80,'Z'};

  #define SIZE sizeof(chars)/sizeof(char)

  int main()

  {

  int i;

  for(i=0;i<SIZE;i++)

  {

  printf("Char %c is %san ASCII character\n",

  chars[i],(isascii(chars[i]))?

"":"not");

  }

  return 0;

  }

&lt;ctype.h&gt; C语言标准库的更多相关文章

  1. C标准库<ctype.h>实现

    本文地址:http://www.cnblogs.com/archimedes/p/c-library-ctype.html,转载请注明源地址. 1.背景知识 ctype.h是C标准函数库中的头文件,定 ...

  2. ctype.h 第2章

    ctype.h ctype.h是c标准函数库中的头文件   定义了一批c语言字符分类函数   (c character classification functions) 用于测试字符是否属于特定的字 ...

  3. 《C标准库》——之<ctype.h>

    在没读<ctype.h>的源码之前,我一直以为我们平时用的isalnum.isdigit.isalpha等这些函数,是靠判断写出来的. 比如: int isdigit(int c){ re ...

  4. 走进C标准库(1)——assert.h,ctype.h

    默默觉得原来的阅读笔记的名字太土了,改了个名字,叫做走进C标准库. 自己就是菜鸟一只,第一次具体看C标准库,文章参杂了对<the standard C library>的阅读和对源码的一些 ...

  5. C 标准库 - ctype.h

    C 标准库 - ctype.h This header declares a set of functions to classify and transform individual charact ...

  6. 逆向 ctype.h 函数库 isalnum、iscntrl、islower、isxdigit、tolower 函数

    0x01 isalnum 函数 函数原型:int isalnum(int c); 函数功能:检查所传的字符是否是字母和数字 动态链接库:ucrtbase.dll C\C++ 实现: #define _ ...

  7. C 标准库系列之ctype.h

    ctype.h 主要提供了一些函数用以测试字符或字符处理的功能函数:包括字符判断检测.字符转换: 目前ASCII字符可分为以下一些类型,如:大写.小写.字母.数字.十六进制.空白字符.可打印字符.控制 ...

  8. C 标准库 - ctype.h之iscntrl 使用

    iscntrl int iscntrl ( int c ); Check if character is a control character 检查给定字符是否为控制字符,即编码 0x00-0x1F ...

  9. C 标准库 - ctype.h之isalpha使用

    isalpha int isalpha ( int c ); Checks whether c is an alphabetic letter. 检查给定字符是否字母字符,即是大写字母( ABCDEF ...

随机推荐

  1. BT基础知识简介

    1. 蓝牙概述   无线局域网的通信 适用范围:10米到100米(根据发射功率的class不同有所差别,典型的class2为10m,而class1为100m,class3为1m) 应用:   局域网络 ...

  2. 如何实现android蓝牙开发 自动配对连接,并不弹出提示框

    之前做一个android版的蓝牙 与血压计通讯的项目,遇到最大的难题就是自动配对. 上网查资料说是用反射createBond()和setPin(),但测试时进行配对还是会出现提示,但配对是成功了 我就 ...

  3. 64位CentOS6.2安装erlang及rabbitmqServer

    CentOS 6.2 64bit 安装erlang及RabbitMQ Server 1.操作系统环境(CentOS 6.2 64bit) [root@HAproxy ~]# cat /etc/issu ...

  4. cocos2d-x游戏开发系列教程-坦克大战游戏之所有坦克之间的碰撞检测

    上篇我们完成了简单的AI编写,但是各个坦克移动时之间是可以重合的, 这节课我们来完成坦克之间的碰撞检测,还是在上篇的EnemyAI中完成. 1.我先现在坦克类Tank中添加两个成员变量: CC_SYN ...

  5. Creating Spatial Indexes(mysql 创建空间索引 The used table type doesn't support SPATIAL indexes)

    For MyISAM tables, MySQL can create spatial indexes using syntax similar to that for creating regula ...

  6. tab group of firefox

    https://addons.mozilla.org/en-US/firefox/addon/tabgroups-menu/? src=search#detail-relnotes https://g ...

  7. 总线接口与计算机通信(五)CAN总线

        CAN网络图示     CAN的特点      CAN协议具有以下特点.      (1) 多主控制  在总线空闲时,所有的单元都可开始发送消息(多主控制). 最先访问总线的单元可获得发送权( ...

  8. android 定时拍照并发送微博

    最近在做android方面的开发,下面是android自动对焦并拍照的小例子: package com.comnvi.camera; import java.io.File; import java. ...

  9. C#拖曳控件加载,bll报错问题

    C#拖曳控件加载,bll报错问题,加载时实例如化bll时加上一个判断 if (!(GetService(typeof(IDesignerHost)) != null            || Sys ...

  10. CSS未知div高度垂直居中代码_层和布局特效

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...