引用及new和delete的使用

8、小作业:
完成 get_same_string 函数的功能!

#include <iostream>
using namespace std;

char* get_same_string(char* x,char* y)
{
    int str1 = strlen(x);
    int str2 = strlen(y);
    int count = 0;
    char* m = new char[100]{ 0 };
    int begin = -1;
    for (int i = 0; i < str1; ++i)
    {
        for (int j = 0; j < str2; ++j)
        {
            while(x[i] == y[j])
            {
                if (begin < 0) begin = i;
                count++;
                i++;
                j++;
            }
            if (count > 1)
            {
                for (int idx = 0; idx < count; ++idx)
                {
                    m[idx] = x[begin + idx];
                }
            }
            else if (count == 1)
            {
                --i;
                --j;
            }
            begin = -1;
            count = 0;
        }
    }
    cout << m << endl;
    delete[] m;
    return 0;
}
int main()
{
    char p1[] = "aabbccaazzk";
    char p2[] = "kkbcyy";
    get_same_string(p1, p2);
    return 0;
}

 

posted on 2021-01-05 15:41  SakuraQAQ  阅读(83)  评论(0)    收藏  举报

导航