strtok函数功能是根据自己设置好的分隔符对字符串进行分割,分割结束返回NULL。
通过查阅源代码自己仿照写了一个strtok函数功能的代码,算法比较冗长还没有优化,但大致功能可以实现,供给大家参考。
/********************************************************************
功能:根据设置的分隔符对字符串进行分割,代码还需优化,敬请期待。。。。
时间:2020-7-9
********************************************************************/
#include <stdio.h>
char *strtok_pro(char *str,const char *delim,char **last);
char *my_strtok(char *str,const char *delim);
int main(int argc,const char **argv)
{
char str[50] = "hello/world-zhang-HE$LLO/LLLLLL-GGGGGG";
printf("%s\n",my_strtok(str,"/-"));
char *p;
while((p = my_strtok(NULL,"/-$")) != NULL)
{
printf("%s\n",p);
}
printf("string done\n");
return 0;
}
/*
调用函数
*/
char *my_strtok(char *str,const char *delim)
{
static char *last; //设置一个静态指针来保存分隔符下一个元素的地址