全部问题 > 当前问题

老师,请问答案中的p 是什么意思,起到什么作用?

请编写一个函数,函数的功能是删除字符串中的所有空格。
例如, 主函数中输入"asd af aa z67", 则输出为 "asdafaaz67"。

void fun (char *str)
{
 int i=0;
 char *p=str;
 while(*p)
 {
   if(*p!=' ')          /*删除空格*/
   {
     str[i]=*p;
     i++;
   }
   p++;
 }
 str[i]='\0';            /*加上结束符*/
}

the pine 2017-2-26 20:05:30

共 2 个回答

最佳答案

qqq 2017-2-26 22:47:27
char *p=str;这里就是让p指针也指向str字符串。然后遍历p指向的字符串,将符合条件的字符赋给str,其实p指针也不是必须的,可以直接用str自己遍历然后给自己赋值,我觉得答案这样写是为了更清晰易懂一些吧。
the pine 2017-2-27 19:17:06

回复 qqq:好的,明白啦,谢谢老师

问题来自: 编程题真题