|
求助这段程序检测字符程序(一小段程序,不要害怕!)
[复制链接]
首先我贴一下我的这段检测程序,这段程序的功能是在s字符串寄存器中检测是否含有t字符串。这段程序是我网上找的,现在运行起来有点问题,请大家修改一下,谢谢各位。
/**************************************************
*查找字符串,在s中查找t
*返 回 值: s_temp(t在s中的位置)成功, 0失败
**************************************************/
uchar *LookFor_Str(uchar *s, uchar *t)
{
uchar *s_temp;
uchar *m_temp;
uchar *t_temp;
if (s == 0 || t == 0) return 0;
for (s_temp = s; *s_temp != '\0'; s_temp++)
{
m_temp = s_temp;
for (t_temp = t; *t_temp == *m_temp; t_temp++, m_temp++);
if (*t_temp == '\0')
return s_temp;
}
return 0;
}
—————$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$----------------------------------
下面图中这个程序是把上面这段程序中的返回值放入P中,然后对P是否为0进行判断。
现在出现的问题1:我监测P,发现这个P是个奇怪的“@”,而不是0或者 s_temp(t在s中的位置)
问题2:就算这个乱码“@”是正确的返回值,那也不等于0,图片中那个if判断程序应该进去执行break跳出while(),但是却没有,一直在while()里面循环,这到底哪里出现差错?
uchar *p;
int i=10;(补上这两个类型)
|
|