- 可以重新申请空间,用j来控制。 如果是空格,就跳过去;不是空格就拷贝到新空间中。
- 做字符串有关工作,一定要有输尾工作。把字符’\0’插入到数组末尾,以标记字符串的结束。
/* 函数功能:删掉字符串所有的空格*/
#include <stdio.h>
#include <string.h>
void rm_blank( char * str)
{
int i=0;
int j=0;
while (str[i]!='\0')
{
if (str[i]==' ')
{
i++;
continue;
}
else
{
str[j]=str[i];
i++;
j++;
}
}
str[j]='\0';
}
int main()
{
char buf[50]="I love China!";
rm_blank(buf);
printf("%s\n",buf);
return 0;
}
运行结果如下:去掉字符串中所有的空格然后输出。
可以参考之前的一段代码,更容易理解。