log个是通过malloc分配的超大的字符串数组,
里面的字符串通过空格隔开。
下面的这个函数就是通过空格对log的字符串进行解析
每解析一条,就将其存储在logItem中。
最后返回解析的条目数。
int logShowUI::getLogItemSum(char **logItem, char *log, int len)
{
int i, item;
int start, end, tmplen;
QString loginfo(log);
char tmp[500] = {'\0'};
item = 0;
for (i = 0; i < len; ) {
printf("item = %d---\n", item);
start = i;
end = loginfo.indexOf('\n', start);
tmplen = end - start;
logItem[item] = (char *)malloc(tmplen * sizeof(char) + 10);
memset(logItem[item], 0, tmplen + 10);
strcpy(tmp, loginfo.mid(start, tmplen).toAscii());
strcpy(logItem[item], tmp);
logItem[item][tmplen + 1] = '\0';
item++;
i += tmplen + 1;
}
return item;
}