c语言去除字符串左边空格、TAB键、换行符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言去除字符串左边空格、TAB键、换行符相关的知识,希望对你有一定的参考价值。

c语言去除字符串左右空格、TAB键、换行符

因为格式化输出时的空格等价于回车

而用gets它的结束是以 \n 即回车表示输出结束
参考技术A void Trim(char *ptr)

char *p,*q;
if(ptr==NULL)
return;
for(p=ptr; *p==' ' || *p=='\t'|| *p=='\n' ; ++p);
if( *p==0 )

*ptr=0;
return;

for(q=ptr; *p; ++p,++q)

*q=*p;

for(p=q-1; *p==' '||*p=='\t'||*p=='\n'; --p);
*(++p)='\0';

这样吧追问

那左右两边都去呢?

追答

哦 我看错题目了 我这个就是两边都去的。。

追问

那左边的呢?

追答

把最后一个循环去掉就好了 再加上*q=0;

追问

谢谢。可以交个朋友吗?

追答

百度怎么不让我说话了。。821251400 QQ

追问

不是不让你说,是想交个朋友嘛

追答

我给你QQ了。。你加吧。。我一般在魔兽地图编辑器吧。。贴吧

本回答被提问者采纳

C语言 统计一串字符中空格键Tab键回车键字母数字及其他字符的个数(Ctrl+Z终止输入)

 //凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 

 1 #include<stdio.h>
 2 
 3 void main(){
 4     int c, letter=0, num=0, blank=0, tab=0, enter=0, other=0 ,i=0, sum=0;
 5     printf("Please input a string:\\n");
 6     while((c=getchar())!=EOF){
 7         sum++;
 8         if(c==\' \'){
 9             ++blank;  //空格键的个数
10         }
11         else if(c==\'\\t\'){
12             ++tab;   //Tab键的个数
13         }
14         else if(c==\'\\n\'){
15             ++enter;   //回车键的个数
16         }
17         else if((c>=\'A\' && c<=\'Z\') || (c>=\'a\' && c<=\'z\')){
18             ++letter;    //字母的个数
19         }
20         else if(c>=\'0\' && c<=\'9\'){
21             ++num;      //数字的个数
22         }
23         else ++other;     //其他字符的个数
24         i++;
25     }
26     printf("There are %d characters\\n", sum);
27     printf("blank=%d, Tab=%d, Enter=%d, letter=%d, number=%d ,other=%d\\n",blank, tab, enter, letter, num, other);
28 
29 }

结果为:

 

以上是关于c语言去除字符串左边空格、TAB键、换行符的主要内容,如果未能解决你的问题,请参考以下文章

source insight 保存时删除多余空格,去除多余空格 space tab键

在c语言中,编程规范里面中的代码缩进,代码缩进统一为4个字符是啥意思?不采用空格键,而用Tab键

在javascript中如何去除字符串两头的空格

VB 中有啥好的办法,用代码去除字符中的:“Tab键”,“回车键”,“空格键”符号。

python-字符串常用方法

excel中如何批量找出最后一个空格右边文字?