16,471
社区成员
发帖
与我相关
我的任务
分享
//创建string对象 用于存储关键字
std::string *KeyText = new std::string[count];//用new创建对象时
if (!KeyText)
return -8;
while (tmptext[tmpi] != '\"' && tmpi < filesize)//跳过第一个双引号前的所有字符
++tmpi;
if (tmpi == filesize)//未发现任何双引号 异常
return -9;
char *text = new(std::nothrow) char[filesize];//
if (!text)
return -6;
//将关键词保存到string数组
for (i = tmpi, ii = 0, mrk = true, string_i = 0; i < filesize; ++i){
if (tmptext[i] != '\"'){
text[ii] = (char)(tmptext[i]);
++ii;
}
else{
if (mrk)//第一次遇到双引号
mrk = false;
else{//再次遇到双引号
text[ii] = '\0';
KeyText[string_i].assign(text);/////////////////////////////////////////////运行到此处报错//////////////////////////////////////
++string_i; ii = 0;
//跳过两个双引号后的所有字符直到遇到下一个双引号
while (tmptext[i + 1] != '\"' && i + 1 < filesize)
++i;
mrk = true;
}
}
}