zoukankan      html  css  js  c++  java
  • <ctype.h> C语言标准库

    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 ",ch1);
      else
      printf("%c is not the ASCII number nor alphebet ",ch1);
      if(isalnum(ch2)!=0)
      printf("%c is the ASCII number or alphebet ",ch2);
      else
      printf("%c is not the ASCII number nor alphebet ",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 ",
      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 ",ch1);
      else
      printf("%c is not the ASCII number ",ch1);
      if(isdigit(ch2)!=0)
      printf("%c is the ASCII number ",ch2);
      else
      printf("%c is not the ASCII number ",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 ",ch1);
      else
      printf("%c is not the ASCII printable character ",ch1);
      if(isgraph(ch2)!=0)
      printf("%c is the ASCII printable character ",ch2);
      else
      printf("%c is not the ASCII printable character ",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 ",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 ",x,tolower(x));
      printf("Character %c to lower is %c ",y,tolower(y));
      printf("Character %c to lower is %c ",z,tolower(z));
      printf("Character %c to lower is %c ",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 ",x,toupper(x));
      printf("Character %c to upper is %c ",y,toupper(y));
      printf("Character %c to upper is %c ",z,toupper(z));
      printf("Character %c to upper is %c ",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 ",ch1);
      else
      printf("%c is not the ASCII number nor alphebet ",ch1);
      if(isalnum(ch2)!=0)
      printf("%c is the ASCII number or alphebet ",ch2);
      else
      printf("%c is not the ASCII number nor alphebet ",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=' ';
      char ch2='a';
      if(isprint(ch1)!=0)
      printf("%c is the ASCII printable charcater ",ch1);
      else
      printf("%c is not the ASCII printable charcater ",ch1);
      if(isprint(ch2)!=0)
      printf("%c is the ASCII printable charcater ",ch2);
      else
      printf("%c is not the ASCII printable charcater ",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 ",ch1);
      else
      printf("%c is not the ASCII punct ",ch1);
      if(ispunct(ch2)!=0)
      printf("%c is the ASCII punct ",ch2);
      else
      printf("%c is not the ASCII punct ",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 ",ch1);
      else
      printf("%c is not the space charcater ",ch1);
      if(isspace(ch2)!=0)
      printf("%c is the space charcater ",ch2);
      else
      printf("%c is not the space charcater ",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 ",
      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 ",ch1);
      else
      printf("%c is not the ASCII hexadecimal number ",ch1);
      if(isxdigit(ch2)!=0)
      printf("%c is the ASCII hexadecimal number ",ch2);
      else
      printf("%c is not the ASCII hexadecimal number ",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 ",
      chars[i],(isascii(chars[i]))?

    "":"not");

      }
      return 0;
      }

  • 相关阅读:
    VS2010/MFC编程入门之四十九(图形图像:CDC类及其屏幕绘图函数)
    VS2010/MFC编程入门之四十八(字体和文本输出:文本输出)
    VS2010/MFC编程入门之四十七(字体和文本输出:CFont字体类)
    VS2010/MFC编程入门之四十六(MFC常用类:MFC异常处理)
    VS2010/MFC编程入门之四十五(MFC常用类:CFile文件操作类)
    VS2010/MFC编程入门之四十四(MFC常用类:定时器Timer)
    VS2010/MFC编程入门之四十三(MFC常用类:CTime类和CTimeSpan类)
    spring cloud深入学习(二)-----服务注册中心spring cloud eureka
    spring cloud深入学习(一)-----什么是微服务?什么是rpc?spring cloud简介
    spring深入学习(六)-----springmvc
  • 原文地址:https://www.cnblogs.com/mfrbuaa/p/5135108.html
Copyright © 2011-2022 走看看