• 字符串输入输出相关


    string

    =,assign() //赋以新值
    swap() //交换两个字符串的内容
    +=,append(),push_back() //在尾部添加字符
    insert() //插入字符
    erase() //删除字符
    clear() //删除全部字符
    replace() //替换字符
    + //串联字符串
    ==,!=,<,<=,>,>=,compare() //比较字符串
    size(),length() //返回字符数量
    max_size() //返回字符的可能最大个数
    empty() //判断字符串是否为空
    capacity() //返回重新分配之前的字符容量
    reserve() //保留一定量内存以容纳一定数量的字符
    [ ], at() //存取单一字符
    >>,getline() //从stream读取某值
    << //将谋值写入stream
    copy() //将某值赋值为一个C_string
    c_str() //将内容以C_string返回
    data() //将内容以字符数组形式返回
    substr() //返回某个子字符串

    #include <string>
    #include <iostream>
    int main( )//substr(开始位置,截取长度)
    {
        using namespace std;
        string  str1 ("Heterological paradoxes are persistent.");
        cout << "The original string str1 is: 
     " << str1<<endl;
        basic_string <char> str2 = str1.substr ( 6, 7 );
        cout << "The substring str1 copied is: " << str2<< endl;
    }
    substr

    查找函数
    begin() end() //提供类似STL的迭代器支持
    rbegin() rend() //逆向迭代器
    get_allocator() //返回配置器

    reverse()//交换前后顺序  #include <algorithm>

    #include <iostream>//实例题目在一堆串里面找出一个最长公共串
    #include <string>//,正反都可以,暴力搜,输出最长公共串长度
    #include <algorithm>//STL reverse函数
    using namespace std;
    int main()
    {
        int t, n, i, j, k;
        string s[102];
        int sm, mlen = 200, max;
        cin >> t;
        while(t--)
        {
            cin >> n;
            for(i = 0; i < n; i++)
            {
                cin >> s[i];
                if(mlen > s[i].size())
                {
                    sm = i;
                    mlen = s[i].size();
                }
            }
            max = 0;
            for(i = s[sm].size(); i > 0; i--)
                for(j = 0; j < s[sm].size() - i + 1; j++)
                {
                    string s1, s2;
                    s1 = s[sm].substr(j, i);
                    s2 = s1;
                    reverse(s2.begin(), s2.end());//反转
                    for(k = 0; k < n; k++)
                        if(s[k].find(s1, 0) == -1 && s[k].find(s2, 0))
                            break;
                    if(k == n && max < s1.size())
                        max = s1.size();
                }
            cout << max << endl;
        }
        return 0;
    }
    reverse

    char

    strcpy()函数
    strcat()函数
    strlen()函数
    strcmp()函数
    strlwr()函数:大写变为小写
    strupr()函数,小写变为大写

  • 相关阅读:
    HR问“你目前有几个offer”,聪明人会怎么说?
    秋招还有 1 个月到达战场,请做好准备 !
    我人生中的第一场Java面试
    MZ头里面的东西。真他妈多
    特殊的一卦
    今天出门去办事,又倒霉了
    内核回调
    sys_call_table HOOK
    起一卦,看看情况
    我的简陋界面库的模块组成
  • 原文地址:https://www.cnblogs.com/dzzy/p/5271792.html
Copyright © 2020-2023  润新知