您的位置:首页 > 编程语言

字节序列查找bytesBytes 和 字符串查找strstr函数的实现代码

2013-12-27 16:18 330 查看
我的实现版本:

//在字节序列(bytes)中,查找子字节序列(subbytes),返回当前指向的位置
BYTE* bytesBytes(BYTE* bytes, BYTE* subbytes, int num, int subnum)
{
BYTE* p1=bytes;//遍历bytes数组的指针
BYTE* p11=bytes;//用于与子数组的比较
BYTE* p2=subbytes;//遍历subbytes子数组的指针
int num1=0;
int subnum1=0;
while(num1<num)
{
p11=p1;
p2=subbytes;
subnum1=0;
while(*p11++==*p2++)//注意此处是==,不是赋值=)
subnum1++;
if (subnum1==subnum)//判断是否找到子数组,即到达p2指针末尾
{
return p1;
break;
}
p1++;
num1++;
}
return NULL;
}
//在字符串(bytes)中,查找子字符串(subbytes),返回当前指向的位置
char* strstr3(char* bytes, char* subbytes)
{
if (bytes==NULL || subbytes==NULL)
{
return NULL;
}
char* p1=bytes;//遍历bytes数组的指针
char* p11=bytes;//用于与子数组的比较
char* p2=subbytes;//遍历subbytes子数组的指针
while(*p1!='\0')
{
p11=p1;
p2=subbytes;
while (*p11++==*p2++);//注意此处是==,不是赋值=
if (*p2=='\0')//到末尾
{
return p1;
//break;
}
p1++;
}
return NULL;
}









                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: