《C程序设计语言》笔记 (十六) 参考手册8

字符类别测试 <ctype.h>

 

头文件<ctype.h>声明了一些测试字符的函数

每个函数的参数均为int类型,参数值必须是EOF或unsigned char类型表示的字符

函数的返回值int类型

如果参数满足指定的条件则函数返回非0,否则返回0

isalnum(c);//函数isalpha(c) 或 isdigit(c) 为真

isalpha(c);//isupper(c)或islower(c)为真

iscntrl(c);// 是否控制字符

isdigit(c);//是否十进制数字

isgraph(c);//是否除空格外的可打印字符

islower(c);//小写字母

isprint(c);//包括空格的可打印字符

ispunct(c);// 除空格 字符  数字外的可打印字符

isspace(c);// 空格 换页符 换行符 回车符 制表符

isupper(c); //大写字母

isxdigit(c);//十六进制数字

  

int tolower(c);//将c转换外小写字母

int toupper(c);//转换外大写

  

字符串函数<string.h>

 

头文件<string.h> 中定义了两组字符串函数

第一组函数名以str开头

第二组函数名以mem开头

除函数memmove外,其他函数都没有定义重叠对象间的复制行为

比较函数将把参数作为unsigned char类型的数组看待

  

在下表中,变量s和t的类型为char *;

cs和ct的类型为 const char*;

n的类型我size_t

c的类型为int(将被转换为char类型);

  

char *strcpy(s,ct);  //将字符串ct(包括'\0')复制到字符串s中并返回s

char *strncpy(s,ct,n);//将字符串ct中最多n个字符复制到字符串s中,并返回s,如果少于n个,以'\0' 填充

char *strcat(s,ct);//将字符串ct连接到s的尾部,并返回s

char *strncat(s,ct,n);//


int strcmp(cs,ct); ;//字符串比较  cs<ct 返回负数  cs==ct  返回0  cs>ct 返回正数

int strncmp(cs,ct,n);

char *strchr(cs,c);//返回指向字符c在字符串cs第一次出现的位置的指针
如果不包含c 返回NULL

char *strrchr(cs,c);//同上,从后往前

size_t strspn(cs,ct);//返回字符串cs包含ct中的字符的前缀的长度

size_t strcspn(cs,ct);//

char *strpbrk(cs,ct);//返回一个指针,指向字符串ct中人任意字符第一次出现在字符串cs中的位置,如果没有返回NULL

char *strstr(cs,ct);//返回一个指针指向字符串ct第一次出现在字符串cs中的位置

size_t strlen(cs);//返回字符串的长度

char *strerror(n);//返回一个指针,指向与错误编号n对应的错误信息字符串

char *strtok(s,ct);//strtok函数在s中搜索ct中的界定记号


以mem开头的函数按照字符数组的方式操作对象

主要目的是提供一个高效的函数接口

void *memcpy(s,ct,n);//将字符串ct中的n个字符复制的s中,返回s

  

数学函数<math.h>

实用函数<stdlib.h>

诊断<assert.h>

可变参数表<stdarg.h>

非局部跳转<setjmp.h>

信号<signal.h>

日期与时间函数<time.h>

与具体实现相关的限制<limits.h> 和<float.h >

posted @ 2017-11-18 17:25  大福笔记  阅读(155)  评论(0编辑  收藏  举报