引言
string 和vector的区别:
string: 支持可变长字符串
vector: 支持可变长集合
迭代器 :用于访问string 和vector的配套类型(帮手),用于访问string中的字符 或 vector中的元素
标准库类型string
头文件: #include <string>
定义和初始化string对象
string s1; //默认初始化,s1是空串
string s2(s1);
string s2 = s1;
string s3("value");
string s3 = "value";
string s4(number,'c'); //string s4(10,'c');
拷贝初始化(copy initialization)
使用符号 ( = ),编译器把等号右侧的初始值拷贝到新创建的对象中
string s2 = s1;
string s3 = "value";
直接初始化(directinitialization)
当要初始化的值有多个时,一般来说只能使用直接初始化
string s2(s1);
string s3("value");
string s4(10,'c');
借助临时对象,多个对象的拷贝初始化
string s8 = string(10,'c');
等价于
string temp(10,'c');
string s8 = temp;
string 整体操作
读写string对象
读写单个string对象
可以使用iostream中的IO操作符读写string
string s;
cin >> s;
cout << s;
注意事项:
如果输入的是" hello world! "
则输出将是"hello",输出结果中没有任何空格
string s,s2;
cin >> s >> s2;
cout << s << s2 <<endl;
in:hello world
out:helloworld
读写未知数量的string对象
while:如果流有效,则会执行while语句内部操作
string word;
while(cin>>word){
cout<<word<<endl;
}
return 0;
hello
hello
mylady
mylady
what
what
cout<<word<<" ";
hello
hello what
what is
is your
your
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。