/**
* 任何人任何机构皆可用于任何项目,此软件免费无需书面授权
* 在软件和软件的所有副本中都必须包含版权声明和软件相关注解
*
* 模块: im
* 简述: 将一个一维数组的值转化为字符串
* 作者: woods zhang -> hoojar@163.com ->
* 版权: 2006-2018, 张树林 拥有此源码所有版权 (MIT许可协议)
* Copyright 2006-2018, Woods Zhang All Rights Reserved (The MIT License)
*/
#include <;
#include <;
/**
* 将一个一维数组的值转化为字符串
*
* @param glue 默认为空的字符串
* @param pieces 你想要转换的数组
* @param out 转化成功的字符串
* @return 转化成功了多少次pieces
*/
int implode(const char *glue, char *pieces[], char *out)
{
int num = 0;
if (glue == NULL || pieces == NULL)
{
return num;
}
while (*pieces)
{
num++;
strcat(out, *pieces);
strcat(out, glue);
pieces++;
}
out[strlen(out) - strlen(glue)] = '';
return num;
}
int main()
{
char str[100] = {0};
char *data[5] =
{
"my name",
"is",
"zhang",
"woods"
};
int num = implode(" - ", data, str);
printf("cout:%d data:%s ", num, str);
return 0;
}