zoukankan      html  css  js  c++  java
  • 删除字符串头部和末尾的空格

    写成函数

    /*
    * =====================================================================================
    *
    * Filename: strtrim.c
    *
    * Description: 删除字符串头部和末尾的空格
    *
    * Version: 1.0
    * Created: 08/30/2011 05:59:33 PM
    * Revision: none
    * Compiler: gcc
    *
    * Author: YOUR NAME (),
    * Company:
    *
    * =====================================================================================
    */
    #include
    <ctype.h>
    #include
    <stdio.h>
    char * strtrim(char * str)
    {
    char *pFirst = str;
    char *pLast = str;

    while(isspace(*pLast))
    ++pLast;

    while(*pLast)//未到字符串末尾
    *pFirst++ = *pLast++;

    *pFirst = '\0';//@1
    return pFirst;
    }

    int main()
    {
    char str[] = " super sdf a faasdf ";
    printf(
    "%s\n",str);
    char *last = strtrim(str);
    int len = last - str;
    printf(
    "%s\n%ld\n",str,len);
    }

      草草的写了下,输出结果看起来是对的,但是后面的空格不知道剔除了没,所以还是输出len,但是len巨大无比,严重怀疑中。

    后来发现@1语句写成了 pFirst = '\0'; 哎,不细心啊。

    由于是面试题目,考察的是代码风格,所以,还应该考虑特殊情况,比如全部为空格的情况,比如差错检测assert等。

  • 相关阅读:
    MySql索引
    HashMap 底层解析
    https超文本安全传输协议
    多线程
    过滤器和拦截器
    计算机操作系统
    计算机网络
    java线程内存模型JMM
    jvm
    数据库
  • 原文地址:https://www.cnblogs.com/westfly/p/2160302.html
Copyright © 2011-2022 走看看