zoukankan      html  css  js  c++  java
  • string的部分总结

    来自洛谷题解https://www.luogu.org/blog/co2021/solution-p1032

    1.读入空格

    getline(cin,a); //可以读入空格

    2.c_str()

    int main()
    {
        char c[20];
        string s = "12345456";
        strcpy_s(c, s.c_str());
        cout << c << endl;
        cout << c[3];
        //printf("%s", s.c_str());
        getchar();
        getchar();
        return 0;
    }
    int main()
    {
        
        string s = "12345456";
        const char *c = s.c_str();
        cout << c << endl;
        cout << c[3];
        //printf("%s", s.c_str());
        getchar();
        getchar();
        return 0;
    }

    3.插入 insert

    str.insert(k,str2),在第k个位置插入字符串str2。

    4.删除 erase

    str.erase(k,num) 删除第k个字符开始的num个字符。

    5.替换 replace

    str.replace(k,num,str2); 把从第k个字符开始的2个字符替换为str2字符串。

    string s = "12345456";
    s.replace(0, 2, "as");
    cout << s; //结果为as345456

    6.find

    str.find(str2)  //返回字符串str中str2第一次出现的位置

    str.find(str2,k)  //从k开始寻找在str中str2出现的位置

    rfind是倒着找,例如:下例输出为7

    int main()
    {
        
        string s = "1200345456";
        int k=s.rfind("45");
        cout << k << endl;
        cout << s;
        //printf("%s", s.c_str());
        getchar();
        getchar();
        return 0;
    }

     find_first_of(c,k)//从前向后找

    find_last_of(c,k)//从后向前找  从k开始找,找字符c,找到返回,匹配失败返回npos

    find_first_not_of()

    str.find_last_not_of(str2,k)   在str中搜索str2中没有的字符,并返回找到的第一个的位置。

    7.substr()

    substr(begin,end)  //若end省略,则代表到结尾

    str="sdnsaddfl amsdlk";

    str.substr(0,3);//就是从下标0到3 即sdn

    8.

  • 相关阅读:
    54.施工方案第二季(最小生成树)
    53.FIB词链
    52.1076 排序
    最短路径:我的理解--SPFA算法
    POJ2187Beauty Contest
    CodeForces 279B Books
    SDUT 2527 斗地主
    HDU1020 Encoding
    POJ 2635 The Embarrassed Cryptographer
    POJ 1942 Paths on a Grid(组合数)
  • 原文地址:https://www.cnblogs.com/yz-lucky77/p/11373749.html
Copyright © 2011-2022 走看看