自己写的字符串去除空格C函数
1) 在字符串s中剔出指定的字符c
static char* trim(char *s, char c)
{return (*s==0)?s:(((*s!=c)?(((trim(s+1,c)-1)==s)?s:(*(trim(s+1,c)-1)=*s,*s=c,trim(s+1,c))):trim(s+1,c)));
}
例子:
char str[] = " M y B eautiful C hin a ! ";
char *s = trim(str, 32);
+ s 0x0030fd0f "MyBeautifulChina!" char *
2) 在字符串s中剔出左侧的指定字符c
static char* ltrim(char *s, char c){
while(*s!=0&&*s==c){s++;}return s;
}
例子:
char str[] = " M y B eautiful C hin a ! ";
char *s = ltrim(str, 32);
+ s 0x0028f804 "M y B eautiful C hin a ! " char *2) 在字符串s中剔出右侧的指定字符c
{
char *p=s,*q=s;while(*p!=0){if(*p!=c){q=p;q++;}p++;}if(q!=s)*q=0;return s;
}
例子:
char str[] = " M y B eautiful C hin a ! ";
char *s = rtrim(str, 32);
+ s 0x002cf6fc " M y B eautiful C hin a !" char *
char *s = rtrim(ltrim(str, 32), 32);