C语言,使用指针法,删除字符串的所有尾部空格。

如题所述

int
main()
{
char
str[256];
gets(str);
int
n
=
strlen(str);
if(n<=0)
return
0;
char
*p
=
str;
p
+=
n-1;
//把p的指针移动到字符串的末尾
while(*(--p)=='
')
{
*p
=
'\0';
}
//指针由末尾向前移动,遇到空格就把空格替换成'\0',也就是字符串的结束符
puts(str);
return
0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-27
language后面是加了四个空格吧?
p=&s[strlen(s1)-4];//定位到要删除的四个空格地址
*p='\0'
;//赋值成空字符,strlen计数到此就会停止
直接把这个添加到中间就可以了。
另外puts,gets一类的要少用,真的太不靠谱了。
warning:
‘gets’
is
deprecated
(declared
at
/usr/include/stdio.h:638)
[-Wdeprecated-declarations]

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网