zoukankan      html  css  js  c++  java
  • c++string函数详解

    string,一个极为好用了函数,学好了这些函数,在模拟以及字符串问题上,回节省很多很多的写代码时间,代码复杂度以及错误率,那么这一类函数都有那些功能呢?我们来逐一介绍(让你大吃一惊,还有这种操作?)

    首先,一切的一切,都要有这个头文件:

    #include <cstring>

    那么如何设string呢?

    string s;

    这就好了,这就是一个字符串,和char c[]设法相像,但是功能多太多了。

    (一个string就是c[]不用谢s[100010]之类的)

    而且,string支持加减,等逻辑运算!!!

    例如:

    int main()
    {
        string a="aabc";
        string b="1221";
        cout<<"a+b: "<<a+b<<endl;
        a=a+b;
        cout<<"a: "<<a+b<<endl;
        if(a!=b)
            cout<<"no";
    }

    运行结果是:

    是不是很厉害,还有更厉害的!!!

    可以初始化同样的字符:

    int main()
    {
        string a(100,'s');
        cout<<a;
    }
     

    运行结果如下:

     还可以求长度:

    int main()
    {
        string a(100,'s');
        cout<<a.size();
    }

    最重要的就是两个字符串搞事情了,重点来了!!!

    int main()
    {
        string a="abc";
        string b="123";
        string c="bc";
        a.insert(1,b);//在下表1的地方插入b
        cout<<a<<endl;
        a="abc";
        a.replace(0,1,b);//将下表0~1位置换成b
        cout<<a<<endl;
        a="abc";
        cout<<a.find(b)<<" "<<a.find(c)<<endl;//在字符串a中找字符串b、c。如果有则返回初始下标,没有则返回一个奇奇怪怪的数 
    }

    运行结果如下:

    还有就是删除:

    int main()
    {
        string a="abc";
        string b="123";
        a.clear();//全部删除,简单粗暴
        b.erase(0,1);//删除0~1-1的字符 
        cout<<a<<endl<<b; 
    }

    本期的string函数就到这里的,欢迎关注

  • 相关阅读:
    第6章 LVM详解
    第5章 Linux上管理文件系统
    第4章 ext文件系统机制原理剖析
    第3章 Linux上文件的权限管理
    第2章 系统用户/组管理(2) su和sudo
    第2章 细说Linux系统用户/组管理(1)
    cpio用法详细说明
    Linux find运行机制详解
    第1章 Linux文件类基础命令
    PXE+kickstart无人值守安装CentOS 6
  • 原文地址:https://www.cnblogs.com/jason2003/p/7689219.html
Copyright © 2011-2022 走看看