2011年软考程序员算法实例:C语言中trim的实现

来源:软件水平考试    发布时间:2012-11-05    软件水平考试视频    评论

  描述:

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

  说明:

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

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

  源代码:

  #include “stdafx.h”

  #include

  #include

  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

  Tokens:

  ”, strtemp );

  trim(szResult,strtemp,seps);

  printf( “result:%s(ok!)

  ”, 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

  ”, token );

  strcat(desc,token);

  /* Get next token: */

  token = strtok( NULL, seps );

  }

  return desc;

  }

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答