#include <bits/stdc++.h>
using namespace std;

char *prefix(char *haystack_start, char *needle_start)
{
    char *haystack = haystack_start;
    char *needle = needle_start;

    while (*haystack && *needle)
    { //这两个指针都没有越界
        //if() return NULL;  //填空位置
        //要移动指针，并判断，if（）
        if ((*haystack++) != *(needle++))
            return NULL;
    }

    if (*needle)
        return NULL; //needle没有越界，返回NULL
    return haystack_start;
}
int main()
{
    cout << prefix("abcd123", "abd") << endl;
    return 0;
}
