C++的string
来源:互联网 发布:ubuntu vmdk安装 编辑:程序博客网 时间:2024/05/29 16:20
string类型是c++编程中常用的一种数据类型,下面简要总结它的用法。
连接两个string或者连接一个string一个char用+
举例:
#include <iostream>#include <string>int main(){ std::string s1 = "Hello"; std::string s2 = "world"; std::cout << s1 + ' ' + s2 + "!\n";}
注意:+两边要有一边是string类型的,最后才会返回是string,如果两边都是char,则最后返回的是两个char类型的相加结果。
//char + char = char string a = ""; char b = '2'; //计算的是49+50,转换成char最后a="c";
string a = ""; char b = '2'; a = a+(char)(1 + '0') + b; //第一个加号重载的是string的+,所以最后得到的结果是a="12" //注意,如果这里写成 a += (char)(1 + '0') + b;则得到的结果也是“c”
输出字符串string
方法一:之前以为不能直接输出,所以用循环输出
string long_str = "afdafda"; for (char str:long_str ) { cout << str; }
方法二:查看了cpprefrence里面的string类的成员函数,发现有一个<<
和>>
的重载
但是要记的#include<string>
#include<string> string long_str = "afdafda"; cout<<long_str;
//输入输出重载例子 #include <iostream> #include <string> #include <sstream> int main() { std::string greeting = "Hello, whirled!"; std::istringstream is(greeting); std::string hello_comma; is >> hello_comma; std::cout << greeting << '\n' << hello_comma << '\n'; }
删除string中的元素用erase
(1)basic_string& erase( size_type index = 0, size_type count = npos );(2)iterator erase( iterator position );(3)iterator erase( const_iterator position );(4)iterator erase( iterator first, iterator last );(5)iterator erase( const_iterator first, const_iterator last );
最基本的是第一种,两个参数,(index,count)
删除从index开始的count个元素。第二个参数默认值是npos, 也就是说默认删除到末尾。
#include <iostream>#include <algorithm>#include <string>int main(){ std::string s = "This is an example"; std::cout << s << '\n'; s.erase(0, 5); // Erase "This " std::cout << s << '\n'; //这里的find返回的是迭代器,所以调用的是上面的重载(2) s.erase(std::find(s.begin(), s.end(), ' ')); // Erase ' ' std::cout << s << '\n'; //这里的find返回的是位置,类型是string::size_type,s所以调用的是重载函数(1) s.erase(s.find(' ')); // Trim from ' ' to the end of the string std::cout << s << '\n';}
输出结果为
This is an exampleis an exampleisan exampleisan
阅读全文
0 0
- C++string的使用
- C/C++——*string++、*++string、++*string的区别
- [C#] String与string的区别
- [C#] String与string的区别
- C#] String与string的区别
- C string 与C++ string的区别
- C#lock 的string String.Intern 方法
- (C#) “神奇”的String (1)
- [C++]String类的实现
- C++string的一个示例
- C++string类的方法
- [C++]String类的实现
- 关于C#string的类型
- [C++]String类的实现
- c-style string 的区别
- C string类型的用法
- C++String类的实现
- 【c++】string类的实现
- Android使用adb命令对手机进行截屏保存到电脑&SDCard
- JAVA内存泄露解析
- transition过渡+text-shadow文字阴影+新增颜色+实例
- 3—4 猜数字游戏的提示
- Web测试方法总结
- C++的string
- 统一建模语言(UML)
- 指针和数组
- acm的常见返回结果
- Qt学习笔记
- 11.20学习心得
- 51nod 1446
- mysql 连接url中useUnicode=true&characterEncoding=UTF-8 的作用
- servlet05-ajax