<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\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;

  }

时间: 2024-10-20 15:49:32

<ctype.h> C语言标准库的相关文章

Go语言标准库之time

Go语言标准库之time 时间的格式化和解析 格式化 Format Go语言和其他语言的时间格式化的方式不同,Go语言格式化的方式更直观,其他的语言一般是yyyy-mm-dd package main import ( "fmt" "time" ) func main() { now := time.Now() fmt.Println(now.Format("2006-01-02 15:04:05")) fmt.Println(now.Forma

Go语言标准库堆(heap)封装及堆排序实现

Go语言的OOP,接口,接口的组合,基础库的函数及接口如何抽象设计, 这些东西在Go的Heap源码及演示例子处理中,都有很好的展示. 在"container/heap"中,它的接口是如下定义的: type Interface interface { sort.Interface Push(x interface{}) // add x as element Len() Pop() interface{} // remove and return element Len() - 1. }

go语言标准库之fmt

fmt标准库是我们在学习Go语言过程中接触最早最频繁的一个了,本文介绍了fmtb包的一些常用函数. fmt fmt包实现了类似C语言printf和scanf的格式化I/O.主要分为向外输出内容和获取输入内容两大部分. 向外输出 标准库fmt提供了以下几种输出相关函数. Print Print系列函数会将内容输出到系统的标准输出,区别在于Print函数直接输出内容,Printf函数支持格式化输出字符串,Println函数会在输出内容的结尾添加一个换行符. func Print(a ...inter

go语言标准库之log

无论是软件开发的调试阶段还是软件上线之后的运行阶段,日志一直都是非常重要的一个环节,我们也应该养成在程序中记录日志的好习惯. log Go语言内置的log包实现了简单的日志服务.本文介绍了标准库log的基本使用. 使用Logger log包定义了Logger类型,该类型提供了一些格式化输出的方法.本包也提供了一个预定义的"标准"logger,可以通过调用函数Print系列(Print|Printf|Println).Fatal系列(Fatal|Fatalf|Fatalln).和Pani

15.Go语言标准库之log介绍

1.log 1.1使用Logger log包定义了Logger类型,该类型提供了一些格式化输出的方法. 本包也提供了一个预定义的"标准"logger,可以通过调用Print系列(Print|Printf|Println).Fatal系列(Fatal|Fatalf|fatalln)和Panic系列(Panic|Panicf|PanicLn)来使用,比自行创建一个logger对象更容易使用. 例如:我们可以像下面的代码一样,直接通过log包来调用上岸提到的方法,默认它们会把日志信息大隐刀终

读书笔记:c语言标准库 - 变长参数

· 变长参数(stdarg.h) 变长参数是c语言的特殊参数形式,例如如下函数声明: int printf(const char * format,...); 如此的声明表明,printf函数除了第一个参数类型为const char*之外,其后可以追加任意数量.任意类型的参数. 在函数实现部分,可以使用stdarg.h里的多个宏来访问各个额外的参数:假设lastarg是变长参数函数的最后一个具名参数(printf里的format),那么在函数内容定义类型为va_list的变量: va_list

C语言标准库

共15个,请查看,在linux下的目录位/usr/share/include assert.h ctype.h errno.h float.h limits.h locale.h math.h setjmp.h signal.h stdarg.h stddef.h stdio.h stdlib.h string.h time.h

Go语言标准库之log包

用来作日志log输出的, 比较易懂. 今天周六啊,在公司加班学习一下呀. package main import ( "log" ) func init() { log.SetPrefix("TRACE: ") log.SetFlags(log.Ldate | log.Lmicroseconds | log.Llongfile) } func main() { log.Println("message") log.Fatalln("fa

Go语言标准库之strconv

Go语言内置包之strconv Go语言中strconv包实现了基本数据类型和其字符串表示的相互转换. strconv包 strconv包实现了基本数据类型与其字符串表示的转换,主要有以下常用函数: Atoi().Itia().parse系列.format系列.append系列. 更多函数请查看官方文档. string与int类型转换 这一组函数是我们平时编程中用的最多的. Atoi() 将字符串类型的整数转换为int类型. func Atoi(s string) (i int, err err