char*hot_ucs2_strstr(const char *str1, const char *str2)
{
char *cp = (char *) str1;
char *s1, *s2;
if (!(*str2 || *(str2+1)))
{
return((char *)str1);
}
while (*cp || *(cp+1))
{
s1 = cp;
s2 = (char *) str2;
while ((*s1 || *(s1+1)) && (*s2 || *(s2+1)) && !((*s1-*s2) || (*(s1+1)-*(s2+1))))
{
s1 += 2;
s2 += 2;
}
if (!(*s2 || *(s2+1)))
{
return(cp);
}
cp += 2;
}
return 0;
}
void main()
{
char tests[]="你好吗?我喜欢你";
char *p=hot_ucs2_strstr(tests,"我");
printf("%s",p); //输出:我喜欢你
}