| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 343 人关注过本帖
标题:以下这段代码在CentOs上跑会引起系统错误,例core.1234
只看楼主 加入收藏
spp_linxing
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-8-22
收藏
 问题点数:0 回复次数:0 
以下这段代码在CentOs上跑会引起系统错误,例core.1234
以下这段代码在CentOs上跑会引起系统错误,例core.1234,请高手帮忙查查出错的原因
int SplitFlagStr2Vect(char*src,std:vector<string> &destVect,char *flag)
{
//"aaa123456789aaa122344545555" ==>> 123456789 and  122344545555
    int lens=strlen(src);
    int lenf=strlen(flag);
    int len=lens-lenf;
    char *pstr=src;
    if((0==lens)||(len<0)) return 0;
    if((NULL==strstr(pstr,flag)) || (0==lenf))
    {
        destVect.push_back(string(pstr));
        return 0;
    }
    if(lens==strlen(strstr(pstr,flag)))
    {
        pstr+=lenf;
        len-=lenf;
    }
    if(lenf==strlen(strstr(pstr,flag)))
    {
        pstr-=lenf;
        len-=lenf;
    }
    for(int n=0; n<len ; n++) //Parse middle flag
    {
        if(NULL==strstr(pstr,flag))
        {
            destVect.push_back(string(pstr));        
            break;
        }
        if(strncasecmp(pstr+n,flag,lenf)==0)
        {
            destVect.push_back(string(pstr,n));            
            n+=lenf;
            pstr+=n;
        }
    }
}
传入参数很简单,char src[]="aaa123456789aaa122344545555",flag="aaa",destVect为一个空的容器,用以接收返回值。
系统错误指向代码:
if(lens==strlen(strstr(pstr,flag)))
    {
        pstr+=lenf;
        len-=lenf;
    }
搜索更多相关主题的帖子: 系统 return 
2012-08-22 15:11
快速回复:以下这段代码在CentOs上跑会引起系统错误,例core.1234
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016368 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved