char * strdup(char * s)
1. 功能很简单,重新分配一块内存,复制s的内容到新内存中。
2. 但是如果s中包含'\0'字符,则只复制到‘\0'
size_t strlen(char * s)
1. 返回字符串的长度。
2. 准确地说应该是第一个'\0'之前的字符串的长度。
char * strchr(char * s, char a)
1. 返回在s中第一次出现a的位置指针,如果没有则返回NULL。
char * strstr(const char * haystack, const char * needle)
1. 返回needle在haystack 中第一次出现的位置指针,如何没出现则返回NULL
2. needle中的结束字符'\0'不参与比较。
char *strsep(char **s, const char *delim)
1. 用来分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串,delim可以是多个字符的组合,任意一个匹配即可,然后将第一个匹配的字符替换成NULL,而*s会被更新为指向替换的下一个字符。
2. 如果需要分割s完毕,则需要多次循环,比如for(token = strsep(&s, delim); token != NULL; token = strsep(&s, delim))。