ММММ Всем спасибо.... уже сделал так
Код:
char *sArr, INI[512], *ptr, *lptr;
//запись в буфер INI[512]
lptr=INI;
while(*lptr!=*(lptr-1))
{
ptr=strchr(lptr,'\0');
sArr=(char*) malloc(ptr-lptr+1);
strncpy(sArr, lptr, ptr-lptr+1);
lptr=ptr+1;
cout <<"sArr :" << sArr <<"\n\r";
cout <<"sArr :" << ptr-INI <<"\n\r";
system("pause");
}
ganselo твой метод не подходит тем что если буфер не полный то результирующий массив будет забиваться хламом в виде нолей или ещё чего.... можешь проверить... напиши
Код:
char buf[] = "aaaa\0bbbb\0cccc\0\0\0\0\0\0";
и увидишь что лишние нули будут в result...
Admiral Увы количество подстрок не известно...
Относительно функциональности правильно. А вот относительно идеологии C++? Подскажите всё ли правильно?!
И ещё подкиньте что нибудь толковое о динамических многомерных массивах в C++... Гугл уже юзаю....