zoukankan      html  css  js  c++  java
  • 去除字符串中的空格

    用C语言写一个函数,去除字符串中的空格,并返回删除的空格的个数。不允许开辟新的空间,只能申请简单类型的自动变量。时间复杂度要求为O(n)。

    #include <bitset>
    #include<iostream>
    int deleteSpace(char * pstr);
    void main()
    {
        char word[]="dhkak df d fd   fdjfkda  dfd ff  f fd da ";
        deleteSpace(word);
        std::cout<<word<<std::endl;
    }
    
    int deleteSpace(char *pstr)
    {
        int newLen = strlen(pstr);
        char *p,*q;
        p=pstr;
        while(*p!=' ') p++;
        q=p;
        while(1)
        {
            while(*q==' ') 
            {
                q++; 
                if (*q=='') break;
            }        
    
            if(*q=='')
            {
                *p=*q;
                break;
            }
            else
            {
                *p=*q;
                *q=' ';
                q++;
                p++;
            }
        }
        int oldLen = strlen(pstr);
    
        return  oldLen-newLen;
    }

     去除首尾的空格

    char* Trim(char* lpStr)
    {
        if(lpStr == NULL)    //如果为空则返回NULL
            return NULL;
    
        char tmp[0x200] = {0};    //临时保存
        strcpy(tmp, lpStr);
        char* ptr = tmp;
        ptr = tmp + strlen(tmp) - 1;    //定位到最后一个字符
        while(*ptr == 0x20)    //从最后开始删除
        {
            ptr--;
            if(ptr < tmp)    //全部是空格则退出
            {
                strcpy(lpStr, "");
                return lpStr;
            }
        }
        *(ptr + 1) = 0;    //截断后面的空格
        ptr = tmp;
        while(*ptr == 0x20)    //从前面开始删除
            ptr++;    
        strcpy(lpStr, ptr);    //返回去掉空格后字符串
        return lpStr;
    }

    http://www.cnblogs.com/memset/archive/2012/03/10/2388569.html

    http://www.cnblogs.com/houjun/p/4915484.html(原文中有点问题) 

  • 相关阅读:
    H3C-路由器密码恢复
    H3C-交换机密码恢复
    H3C-端口镜像
    [洛谷P4234]最小差值生成树
    [BZOJ4003]城池攻占
    [BZOJ1058]报表统计
    [BZOJ1584]Cleaning Up 打扫卫生
    [BZOJ3733]Iloczyn
    [HDU5709]Claris Loves Painting
    [BZOJ5109]大吉大利,晚上吃鸡!
  • 原文地址:https://www.cnblogs.com/lwngreat/p/4921719.html
Copyright © 2011-2022 走看看