#include<stdio.h>
/*删除前导空格的函数*/
void headspace(char* s)
{
int i,j;
for(i=0;s[i]==32;i++); /*循环结束后的i值为前导空格的个数*/
if(i==0) return;
for(j=i;s[j]!='/0';j++) s[j-i]=s[j];
s[j-i]='/0';
}
/*删除后继空格的函数*/
void tailspace(char* s)
{
int i=0,k;
while(s[i]!='/0')i++;
for(k=i-1;s[k]==32;k--);
s[k+1]='/0';
}
/*main函数可以用来测试函数的正确性*/
main()
{
char s[20];
printf("/n");
gets(s); /*输入一个字符串*/
puts(s); /*输出字符串*/
printf("/n");
printf("%d/n",strlen(s)); /*输出原字符串的长度(不包含结束标志)*/
headspace(s);
puts(s);
printf("/n");
printf("%d/n",strlen(s)); /*输出删除前导空格后的字符串的长度*/
tailspace(s);
puts(s);
printf("/n");
printf("%d/n",strlen(s)); /*输出删除后继空格后的字符串的长度*/
}
本文介绍了一个C语言函数,用于删除字符串的前导和后继空格。函数`headspace`处理前导空格,`tailspace`处理后继空格。在`main`函数中,演示了如何使用这两个函数并测试了它们的效果,包括原字符串长度及删除空格后的长度变化。
1362

被折叠的 条评论
为什么被折叠?



