zoukankan      html  css  js  c++  java
  • 《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(包括'')复制到字符串s中并返回s
    
    char *strncpy(s,ct,n);//将字符串ct中最多n个字符复制到字符串s中,并返回s,如果少于n个,以'' 填充
    
    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 >

  • 相关阅读:
    【More Effective C++ 条款4】非必要不提供default constructor
    【More Effective C++ 条款3】最好不要以多态方式处理数组
    【C++】Debug模式和Release模式的区别
    【More Effective C++ 条款2】最好使用C++转型操作符
    【More Effective C++ 条款1】仔细区别pointers和references
    程序崩溃时的堆栈捕捉
    快速排序--来自维基百科
    十六进制转为字符串
    linux那些事
    svnsync备份
  • 原文地址:https://www.cnblogs.com/dafume/p/7852580.html
Copyright © 2011-2022 走看看