/**
* 任何人任何机构皆可用于任何项目,此软件免费无需书面授权
* 在软件和软件的所有副本中都必须包含版权声明和软件相关注解
*
* 模块: ex
* 简述: 使用一个字符串分割另一个字符串
* 作者: woods zhang -> hoojar@163.com ->
* 版权: 2006-2018, 张树林 拥有此源码所有版权 (MIT许可协议)
* Copyright 2006-2018, Woods Zhang All Rights Reserved (The MIT License)
*/
#include <;
#include <;
#include <;
/**
* 使用一个字符串分割另一个字符串
*
* @param delimiter 边界上的分隔字符
* @param haystack 输入的字符串
* @param out 输出的字符串指针
* @return 分割成了多少个成员
*/
int explode(char *delimiter, char *haystack, char *out[])
{
int num = 0;
if (delimiter == NULL || haystack == NULL)
{
return num;
}
char *pstr = strtok(haystack, delimiter);
while (pstr != NULL)
{
out[num++] = pstr;
pstr = strtok(NULL, delimiter);
}
return num;
}
int main(void)
{
int i = 0;
char *list[12];
char haystack[] = "my name is zhang name woods";
int cnt = explode(" ", haystack, list);
for (i = 0; i < cnt; i++)
{
puts(list[i]);
}
return 0;
}