linux处理字符串函数

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))。

你可能感兴趣的:(linux处理字符串函数)