生活随笔
收集整理的這篇文章主要介紹了
string基本字符系列容器
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Code:
#include <iostream>
#include <string>
#include <vector>
using namespace std;int main()
{string s;cin>>s;s=s+"abcd";cout<<s<<endl;s.append("123"); //在字符串s后面添加123cout<<s<<endl;s.insert(s.begin()+2,'9');cout<<s<<endl;cout<<s[2]<<endl;s.erase(s.begin()+3);cout<<s<<endl;s.erase(s.begin(),s.begin()+3);cout<<s<<endl;s.replace(3,6,"good"); //從第3個開始,將連續(xù)的6個字符替換為goodcout<<s<<endl;cout<<s.length()<<endl;return 0;
}
采用find()方法可以查找字符串中的第一個字符元素或者子串,如果查到,則返回下標值(從0開始計數(shù)),如果查不到,則返回4294967295
#include <iostream>
#include <string>
using namespace std;int main()
{string s;s="cat dog cat";cout<<s.find('o')<<endl;cout<<s.find("dog")<<endl;cout<<s.find("dogc")<<endl;return 0;
}
compare()方法與其他字符串相比較,如果它比對方大,則返回1,如果比對方小則返回-1,如果相等則返回0
#include <iostream>
#include <string>
using namespace std;int main()
{string s;s="cat dog cat";cout<<s.compare("cat")<<endl;cout<<s.compare("cat dog cat")<<endl;cout<<s.compare("dog")<<endl;return 0;
}
反轉(zhuǎn)字符串:reverse()
#include <iostream>
#include <algorithm>
#include <string>int main()
{std::string s;s="123456789";std::reverse(s.begin(),s.end());std::cout<<s<<std::endl;return 0;
}
string對象作為vector元素
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>int main()
{std::vector<std::string> v;v.push_back("Jack");v.push_back("Mike");v.push_back("Tom");std::cout<<v[1]<<std::endl;std::cout<<v[2][0]<<std::endl;std::cout<<v[2].length()<<std::endl;return 0;
}
string的輸入與輸出:
#include <iostream>
#include <stdio.h>
#include <string>
using namespace std;int main()
{string s;char ss[105];scanf("%s",ss); //string對象輸入方法s=ss;printf(s.c_str()); //用printf輸出字符串對象采用c_str()方法cout<<endl;
}
sscanf()可以把一個字符串按自己需要的方式分離出子串,甚至是數(shù)字
#include <iostream>
#include <string>
#include <stdio.h>
using namespace std;int main()
{string s1,s2,s3;char sa[105],sb[105],sc[105];sscanf("abc 123 pc","%s %s %s",sa,sb,sc);s1=sa;s2=sb;s3=sc;cout<<s1<<" "<<s2<<" "<<s3<<endl;int a,b,c;sscanf("1 2 3","%d %d %d",&a,&b,&c);cout<<a<<" "<<b<<" "<<c<<endl;int x,y,z;sscanf("4,5$6","%d,%d$%d",&x,&y,&z);cout<<x<<" "<<y<<" "<<z<<endl;return 0;
}
string對象與數(shù)值之間的相互轉(zhuǎn)換
#include <iostream>
#include <stdio.h>
#include <string>
#include <sstream>
using namespace std;string convertToString(double x)
{ostringstream o;if(o<<x)return o.str();return "conversion error";
}double convertFromString(const string &s)
{istringstream i(s);double x;if(i>>x)return x;return 0.0;
}int main()
{char b[15];string a;sprintf(b,"%d",1993); //C語言將數(shù)值轉(zhuǎn)化為stringa=b;cout<<a<<endl;string cc=convertToString(1993); //C++語言將數(shù)值轉(zhuǎn)化為stringcout<<cc<<endl;string dd="2013";int p=convertFromString(dd); //C++語言將string轉(zhuǎn)化為數(shù)值cout<<p<<endl;return 0;
}
總結(jié)
以上是生活随笔為你收集整理的string基本字符系列容器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。