Вот я написал функцию для соединения строк для
char
Код:
char * ConcatenateA(int count, char *c[])
{
size_t *l = new size_t[count];
size_t len = 1;
for (int i = 0; i < count; i++)
if(c[i])
{
l[i] = strlen(c[i]);
len += l[i];
}
char *dst = (char*)malloc(len);
int l2 = 0;
for (int i = 0; i < count; i++)
if(c[i])
{
memcpy(dst+l2, c[i], l[i]);
l2+=l[i];
}
dst[len-1] = 0;
delete[count] l;
return dst;
}
// --->
char * sm[5] = {"9", "12", NULL, "6789", "ABCDE"};
char * s = StrConcatenateA(5, sm);
cout << s << endl;
// <---
Как вот написать такую же функцию для wchar_t у мну че-то не выходит, помогите пожалуйста
Код:
wchar_t * ConcatenateW(int count, wchar_t *w[]);
// --->
wchar_t * sm[5] = {L"9", L"12", NULL, L"6789", L"ABCDE"};
wchar_t * s = StrConcatenateW(5, sm);
wcout << s << endl;
// <---