zoukankan      html  css  js  c++  java
  • C++删除字符串中特定的字符

    原文:https://snipt.net/aolin/c-6/

    //处理string类型的方法del_sp(string &str)待测试
    //处理C-Style的方法可用,可以考虑将该方法改写为void del_ch(char *src , char ch),使其更加通用化。
    
    #include <iostream>
    #include <string>
    using namespace std;
    void del_sp(char *src);    // 删除C风格字符串中的空格
    void del_sp(string &str);  // 重载del_sp,调用C风格的函数
    int main()
    {
        char hl[] = "删 除 空 格Hello world!   Hello world!   88  ";
        cout << hl << endl;
        del_sp(hl);
        cout << hl << endl;
    
        string str("删 除 空 格Hello world!   Hello world!   88  ");
        cout << str << "
    长度" << str.size() << endl;
        del_sp(str);  //调用重载的 del_sp
        cout << str << "
    长度" << str.size() << endl;
    
        return 0;
    }
    
    void del_sp(char *src)    // 删除C风格字符串中的空格
    {
        char * fp = src;
        while (*src) {
            if (*src != ' ') { // 如果不是空格就复制
                *fp = *src;
                fp++;
            }
            src++;
        }
        *fp = '' ; //封闭字符串
    }
    
    void del_sp(string &str)   // 删除string字符串中的空格
    {
        // 因为str.c_str() 是const的,不能直接修改,
        // 所以要复制一个临时的,然后修改后换回去
        char tmp[str.size()+1];
        memcpy(&tmp, str.c_str(), str.size() + 1);
        del_sp(tmp);    // 重载del_sp,调用C风格的函数
        str = tmp;
    }
  • 相关阅读:
    linux grep命令
    PHP 利用simplexml_load_file 读取XML对应的字段 然后存入mysql数据库
    php 设计模式之单类模式
    Mac C#开发工具Rider安利与环境配置教程
    模拟,贪心,枚举(二)
    模拟,贪心,枚举
    10.10 review
    review 10.9
    10.6 review
    9.28 review
  • 原文地址:https://www.cnblogs.com/zhizhan/p/4909016.html
Copyright © 2011-2022 走看看