String

Posted ymbjrsh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了String相关的知识,希望对你有一定的参考价值。

#include<iostream>
#include<vector>
#include<cstdio>
#include<string>
#include<algorithm>
using namespace std;
int main()
{
    char ss[50];
    scanf("%s",ss);//string不支持c语言的scanf和printf
    string s,s1;
    s="STL";
    cout<<s<<endl;
    s1=s1+s;//此时s1内正好有‘s‘这一个字符,字符串也一样
    cout<<s1<<endl;
    s=ss;
    cout<<s<<endl;
    s=s+n;
    cout<<s<<endl;
    s=s+"yes";  //String支持直接相加
    cout<<s<<endl;
    cout<<s.length()<<endl;
    string::iterator it;     //用insert给string对象插入字符
    it=s.begin();
    s.insert(it+3,p);
    cout<<s<<endl;
    for(int i=0;i<s.length();i++)//可类似于char数组进行遍历
    {

    }
    printf(s.c_str());//用printf输出字符串对象,c_str()将string对象转化为char*对象,返回const char*类型(可读不可改)指向字符数组的指针
    cout<<endl;
    char a1[10],a2[10],a3[10];
    string ss1,ss2,ss3;
    sscanf("abc def ghi","%s %s %s",a1,a2,a3);//整型数字等其他格式类似,分隔符不一定要用空格,也可以用其他的
    ss1=a1;
    ss2=a2;
    ss3=a3;
    cout<<ss1<<" "<<ss2<<" "<<ss3<<endl;
    sprintf(a1,"%d",123);//将数值转换为string,打印到字符串中
    ss1=a1;
    cout<<ss1<<endl;
    cout<<s[3]<<endl;    //string对象的元素为一个char字符
    cout<<s[3]-a<<endl;
    s.replace(2,3,"no");//从第2个(0开始)字符开始的连续3个子字符串替换为"no"
    cout<<s<<endl;
    cout<<s.find(n)<<endl;//查找成功则返回字符或字串的下标值(从0开始,注意包括空格)
    cout<<s.find("no")<<endl;//查找失败则返回4294967295
    cout<<s.compare("asd")<<endl;//若s比括号内字符串大则返回1,相等0,小于-1
    s.erase(it+3);
    cout<<s<<endl;
    s.erase(it,it+2);//左闭右开,即第0到1这两个元素
    cout<<s<<endl;
    reverse(s.begin(),s.end());//对string对象中的指定区间进行反向排序,头文件#include<algorithm>
    s="";    //给s赋空字符串用来清空字符串
    cout<<s.length()<<endl;
    cout<<s.empty()<<endl;//若为空,逻辑真,返回1,反之,返回0
    vector<string>vt;//string对象作为vector元素
    vt.push_back("good");
    cout<<vt[0]<<endl;
    cout<<vt[0][3]<<endl;
    cout<<vt[0].length()<<endl;
    return 0;
}

 

以上是关于String的主要内容,如果未能解决你的问题,请参考以下文章

如何理解这段代码片段中的两对括号?

Failed to convert property value of type ‘java.lang.String‘ to required type ‘int‘ for property(代码片段

面试常用的代码片段

21个常用代码片段

js常用代码片段

java.lang.NullPointerException: Attempt to invoke virtual method ‘int android.database.sqlite异常(代码片段