C语言中trim的实现

王朝vc·作者佚名  2006-01-17
宽屏版  字体: |||超大  

C语言中trim的实现

作者:老包米

描述

自己用ATL写了个COM,不支持MFC,所以无法用CString,但支持C编码,遇到字符串(字符数组),想去掉字符串中的空格,C下没有TRIM函数,找又没找到,几行代码自己写吧。往后大家万一遇到用着也方便。

说明

1.seps是需要去除的字符数组,可以有几个字符,也可以一个。这里是空格,最常用的。

2.参数也很简单,第一个是结果数组指针,第二个是原字符数组指针,第三个是需要去掉的字符数组指针。返回的是结果数组指针。

源代码

#include "stdafx.h"

#include <string.h>

#include <stdio.h>

char seps[] = " ";

char* trim(char* desc,char* src,char* seps);

int main(int argc, char* argv[])

{

char szResult[1024]="";

memset(szResult,0,1024);

char strtemp[]="ab c d e f";

printf( "%s\n\nTokens:\n", strtemp );

trim(szResult,strtemp,seps);

printf( "result:%s(ok!)\n", szResult );

return 0;

}

//////////////////////////////////////////////////////

char* trim(char* desc,char* src,char* seps)

{

char* token=NULL;

/* Establish string and get the first token: */

token = strtok(src, seps);

while( token != NULL )

{

/* While there are tokens in "string" */

printf( " %s\n", token );

strcat(desc,token);

/* Get next token: */

token = strtok( NULL, seps );

}

return desc;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有