该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
int GetFirstPos(char *s1,char *s2)
{ 
   
    int len1=strlen(s1),len2=strlen(s2);
    for(int i=0; i
    {
        for(int j=0; j
        {
            if(s1[i]==s2[j])       
            return i;
        }
    }
   
}
char* GetCommon(char *s1, char *s2)
{
   
    int len1=strlen(s1);
    int len2=strlen(s2);
    int maxlen=0;
    int as,bs,count;
    char *s=NULL;
    for(int i=0; i
    {
        for(int j=0; j
        {
            if(s1[i]==s2[j])        //找到了第一个相等的
            {
                as=i;
                bs=j;
                count=1; // 保存第一个相等的首地址
            }
            while(as+1
                count++;
            if(count>maxlen)  //如果大于最大长度则更新
                maxlen=count;
        }
    }
    s=new char[maxlen+1];
    s[maxlen]=0;
    s=s1+GetFirstPos(s1,s2);
    for(i=0; i
    s[i]=s1[GetFirstPos(s1,s2)+i];
    return s;
}
运行后程序崩溃,期待高手.