- C++支持两种类型的字符串:①包括一个结束符‘ \0 ’(即以NULL 结束)的字符数组 ②字符串类string
- 可以在表达式中把string类对象和以 ‘ \0 ’ 结束的字符串混在一起使用,例如可以把一个以‘ \0 ’结束的字符串赋给一个string 类对象
- 使用string类必须在程序的开始包括头文件string,即要有语句:#include< string>
- string 类的字符串对象的使用方法与其他对象一样,也必须先定义才可以使用。其定义格式如下:string 对象1,对象2
- 对string类对象初始化
string str1( "China" ); //定义string类对象str1同时对其初始化
string str2="China"; //定义string类对象str2同时对其初始化
- C++的string 类使得字符串的处理比字符串函数直观而方便。C++为string 类的对象定义了许多应用于字符串的运算符,这些运算符允许在一般的表达式中使用string 类对象,而不需要调用类似于strcpy 或 strcat 之类的函数,常用的字符串运算符:
运算符 | 例子 | 注释 |
---|---|---|
= | s1=s2 | 用s2给s1赋值 |
+ | s1+s2 | 用s1和s2连接成一个新串 |
+= | s1+=s2 | 等价于s1=s1+s2 |
== | s1==s2 | 判断s1与s2是否相等 |
!= | s1!=s2 | 判断s1与s2是否不等 |
< | s1<s2 | 判断s1是否小于s2 |
<= | s1<=s2 | 判断s1是否小于等于s2 |
> | s1>s2 | 判断s1是否大于s2 |
>= | s1>=s2 | 判断s1是否大于或等于s2 |
[] | s1[ i ] | 访问串对象s1中下标为 i 的字符 |
>> | cin>>a1 | 从键盘输入一个字符串给串对象s1 |
<< | cout<<s1 | 将串对象s1输出 |
例子 :string类运算符的操作
#include<iostream>
#include<string>
using namespace std;
int main(){
string s1="ABC"; //定义string类对象s1并进行初始化
string s2="DEF"; //定义string类对象s2并进行初始化
string s3("GHI"); //定义string类对象s3并进行初始化
string s4,s5; //定义string类对象s4和s5
s4=s1; //字符串赋值
cout<<"s4 is "<<s4<<endl;
s5=s1+s2; //字符串连接
cout<<"s1+s2 is "<<s5<<endl;
s5=s1+"123"; //字符串连接
cout<<"s1+\"123\" is "<<s5<<endl;
if(s3>s1)
cout<<"s3>s1"<<endl;
else
cout<<"s3<s1"<<endl;
if(s4==s1)
cout<<"s4=s1"<<endl;
else
cout<<"s4<>s1"<<endl;
cout<<"请输入一个字符串给s5:";
cin>>s5;
cout<<"s5 is "<<s5<<endl;
return 0;
}