使用string数据类型,需要引入头文件 #include<string>
1.string类型的声明:
string s;
2.string类型的初始化:
string s="abcd"; 或者 string s="a b cd";
这两种分别是不带空格和带空格的初始化,是都可以的。
3.string类型的读入:
cin>>s; //不能读入空格,以空格、制表符、回车符作为结束标志
getline(cin,s); //可以读入空格和制表符,以回车符作为结束标志
4.求string类型的长度:
int len=s.size(); 或者 int len=s.length();
两种方法是等价的
5.求string类型下标为i的字符:
s[i] 或 char c=s.at(i)
6.查找t是否为s的子串:
s.find(t);
如果t是s的子串则返回首次匹配的位置,否则返回 string::npos 或 -1
7.字符数组转string类型:
s=str;
str为char数组,s为string类型
8.string类型转字符数组:
strcpy(str,s.c_str());
需要引用string.h头文件
9.两个string比较大小:
if(s1<s2); 或 s1.compare(s2);
相等时返回0;s1>s2时返回1,s1<s2时返回-1
10.两个string连接:
s1=s1+s2; 或 s1.append(s2);
11对string类型数组排序
string s[100];
sort(s,s+n,cmp);
int cmp(string a,string b)
{
return a<b; //或a>b;
}
其中sort函数为C++ STL中提供的快速排序函数。