※ 引述《streitleak.bbs@aeug.twbbs.org (亞斯爾‧馮‧修特萊)》之銘言:
: strncpy(&NC,tmpStr,1);
: strncpy(&NC2,tmpStr+1,1);
: if( atoi(&NC)== 0 && atoi(&NC2)==0 )
: { continue;
: }
if (tmpStr[0]=='0' && tmpStr[1]=='0')
: /* for( int j=0;j<strlen(tmpStr);j++ )
: { if( tmpStr[j]=='\t' ) tmpStr[j]=' ';
: }*/
如果 string 夠長的話,這裡就會很慢...
用個變數把 strlen(tmpStr) 的值存下來吧
: sscanf(tmpStr,"%20s %20s %30s %20s %20s %07s",tmpCaller,tmpCallee,tmp,sttime,entime,tmp2);
: strcpy(SrcData[i].CallerID, tmpCaller);
: strcpy(SrcData[i].CalleeID, tmpCallee+1);
tmpCaller 後面好像沒有再用到
何不直接用 sscanf(tmpStr, "%20s", SrcData[i].CallerID); 呢?
如果這些改好了還會一筆一秒,那我也沒辦法了 orz
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.55