while(*r){
}
缺花括号
*r == *p 少了个=号吧
代码不全
if(*r=*p)这里,应该是if(*r==*p),中间两个等号。两个等号是判断,一个等号是赋值。如有帮助,请采纳一下,谢谢。