28 implement strstr

1,"AAAAA" "BB" 从左向右比较"AAAA" 0 - 3 (5-2)
2, stringncmp 实现


int string_ncmp(char * a, char *b, int n){
    while(*a && (*a == *b) &&n){
            a++;
            b++;
            --n;
    }
    if(n == 0)
        return 0;
    else
        return *a - *b;
}
int strStr(char* haystack, char* needle) {
    int m  = strlen(haystack);
    int n  = strlen(needle);

    if(n > m)
        return -1;
    for(int i = 0; i <= m-n ; i++){
        if(!string_ncmp(haystack+i,needle,n))
            return i;
    }

    return -1;
}


你可能感兴趣的:(28 implement strstr)