首页 > 编程语言 > 详细

C语言实现删除字符串首尾的空格,中间的连续空格只留一个,原来字符串顺序不变

时间:2019-08-27 22:45:48      阅读:92      评论:0      收藏:0      [点我收藏+]
#include<stdio.h> #include<string.h> char * deblank(char * str) { char * left = str;//前面的指针,负责赋值 char * right = str;//后面寻找非空格字符的指针 while (*right)//截至字符串完 { if (*right != ‘ ‘) { if (left<right) { *left = *right;//赋值 } left++; } if (*right == ‘ ‘&&*(right + 1) != ‘ ‘)//寻找到下一个单词时,对left的操作 { *left = ‘ ‘; left++; } right++; } *left = ‘\0‘; return *str != ‘ ‘ ?str:(str + 1);//防止首单词之前有空格现象 } int main() { char str[] = " as adadq k "; char *a = deblank(str); int i; for (i = 0; i < strlen(a); i++) { printf("%c",*(a+i));//输出流 } return 0; }

C语言实现删除字符串首尾的空格,中间的连续空格只留一个,原来字符串顺序不变

原文:https://blog.51cto.com/14233078/2433103

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!