c语言实现去除字符串首尾空格
2018-06-18 04:11:27来源:未知 阅读 ()
字符串内存图如下:
引入头文件:
1 #include<stdlib.h> 2 #include<stdio.h> 3 #include<string.h>
函数原型:
1 void trim(char *strIn /*in*/, char *strOut /*in*/);
实现方法一:
void trim(char *strIn, char *strOut){
int i, j ;
i = 0;
j = strlen(strIn) - 1;
while(strIn[i] == ' ')
++i;
while(strIn[j] == ' ')
--j;
strncpy(strOut, strIn + i , j - i + 1);
strOut[j - i + 1] = '\0';
}
实现方法二:
1 void trim(char *strIn, char *strOut){
2
3 char *start, *end, *temp;//定义去除空格后字符串的头尾指针和遍历指针
4
5 temp = strIn;
6
7 while (*temp == ' '){
8 ++temp;
9 }
10
11 start = temp; //求得头指针
12
13 temp = strIn + strlen(strIn) - 1; //得到原字符串最后一个字符的指针(不是'\0')
14
15 printf("%c\n", *temp);
16
17 while (*temp == ' '){
18 --temp;
19 }
20
21 end = temp; //求得尾指针
22
23
24 for(strIn = start; strIn <= end; ){
25 *strOut++ = *strIn++;
26 }
27
28 *strOut = '\0';
29 }
测试:
1 void main(){
2 char *strIn = " ak kl p ";
3
4 char strOut[100];
5
6 trim(strIn, strOut);
7
8 printf("*%s*\n",strOut);
9
10 system("pause");
11 }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:数组实现多项式的加减乘运算
下一篇:使用CMake构建复杂工程
- 关于各种不同开发语言之间数据加密方法(DES,RSA等)的互通的 2020-06-07
- C语言程序结构 2020-05-31
- C++冒泡排序 (基于函数模板实现) 2020-05-31
- opencv-12-高斯滤波-双边滤波(附C++代码实现) 2020-05-10
- 二叉排序树 2020-05-02
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash