- //trim a string by make more than one blank to one blank
- char* trim(char* a)
- {
- int i=-1,j=0;
- for (;a[j]!='\0';j++)
- {
- if (a[j]==a[j+1] && a[j+1]==' ')
- {
- //skip more than one blank
- while (a[j]==' ')
- {
- ++j;
- }
- --j;// go back to the last blank
- }
- a[++i]=a[j];
- }
- a[++i]='\0';
- return a;
- }
- int main( void )
- {
- char a[100]="a b c d e f";
- printf(a);
- printf(trim(a));
- return 0;
- }
删除字符串中的连续空格(只保留一个),O(n)时间复杂度,O(1)空间复杂度
最新推荐文章于 2020-08-11 10:14:23 发布
本文介绍了一个使用C++实现的字符串处理函数,该函数能够将输入字符串中多余的空格缩减为单个空格,以此来规范化字符串的格式。通过遍历和条件判断,有效地实现了字符串的修剪。
2136

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



