zoukankan      html  css  js  c++  java
  • 第九章 字符串,字符和字节

    1.NUL字节是字符串终止符,但它本身并不是字符串的一部分,所以字符串的长度并不包括NUL字节。

    2.size_t这个类型是在头文件stddef.h中定义的,返回长度。

    3.连接字符串:strcat

    strcpy(message,"hello");
    strcat(message,customer_name);
    strcat(message,",how are you?");

    hello,how are you?

    strcat(strcpy(dat,a),b);

    ab

    4.字符串比较(字典比较):比较ASCII码大小   strcmp

    5.NUL相当于‘’,结束字符串,前者为字符常量的名字,后者相当于是字符串常量

       NULL在stddef.h中专门为空指针定义的一个宏(void *)0

    6.strlen不包含'',strcpy会把''复制过去。

    strlen返回字符串长度时,不会把字符串长度返回过去。

    7.长度受限的字符串函数:strncpy.......char *strncpy(char *dst, char const *src, size_t len)  向dst中写入len个字符,如果被复制字符串小于len个字符,则将用NUL补充至len个。如果大于或等于,结果不会有NUL所以需要自己加上‘’。

                                             

                                             strncat.......char *strncat(char *dst, char *src,size_t len)总是在结果字符串后面添加NUL字节,而且它不会像strncpy那样对目标数组用NUL字节进行填充。

                                             strncmp........int strncmp(char const *s1,char const *s2, char const *s3)只对前len个进行比较。

    8.字符串查找:

    查找一个字符:strchr,strrchr                         查找任何几个字符:strpbrk

    查找一个子串:strstr                                     查找一个字符串前缀:strspn,strcspn

    查找标记:strtok                                           错误信息:strerror

    字符转换:tolower,toupper                           内存操作:memcpy(复制),memchr(查找),memset(设置(初始化等))

    字符串分类:iscnstrl.....

    9.在使用strcpy和strcat时要考虑容器够大,否则会溢出。

  • 相关阅读:
    线性地址物理地址逻辑地址转换mmu
    C/c++ 宏返回值
    树的子结构
    合并两个排序的链表
    链表中倒数第k个结点
    数值的整数次方
    原码、反码与补码
    二进制中1的个数
    矩形覆盖
    变态跳台阶
  • 原文地址:https://www.cnblogs.com/Mayfly-nymph/p/8372926.html
Copyright © 2011-2022 走看看