标签:hid i++ 使用字符串 cat 管理 头文件 定义 nbsp 指定
在C语言里面,字符串用char*来声明。在c++中定义了string类,包含在头文件<string>中。
string中封装了char*,是一个char*的容器,并且提供了很多实用的成员方法。
使用string的时候不用像char*需要考虑内存的释放和越界,这些都由string类内部进行管理。
1.创建string对象
(1)创建一个空字符串
string str;
(2)使用一个字符串初始化string
string str("test");
(3)使用一个string对象初始化另一个对象
string str("test");
string str1(str);
(4)使用n个相同字符初始化string对象
string str(10,‘a‘);
2.使用‘=’对string进行赋值操作
(1)使用字符串对string对象进行赋值
string str = "test";
(2)将一个string对象赋值给另一个string对象
string str ="test";
string str1 = str;
(3)将一个字符赋值给string对象
string str = ‘a‘;
3.使用assign对string对象进行赋值操作
(1)使用字符串对string对象进行赋值
string str;str.assign("test");
(2)用字符串的前n个字符对string对象进行赋值
string str;str.assign("test",2);
(3)将一个string对象赋值给另一个string对象
string str;
string str1 = "test";
str.assign(str1);
(4)使用n个相同的字符对string对象进行赋值
string str;str.assign(10,‘a‘);
(5)截取一个string对象的从第n个字符开始(n从0开始),取m个字符赋值给另一个string对象
string str = "woshidashab";
string str1;
str1.assign(str,0,5);//从str的第0个字符开始取5个字符赋值给str1
4.使用[]访问string对象中的指定字符
string str = "test";
for(int i = 0;i<str.size();i++){
std::cout<<str[i]<<std::endl;
}
4.使用at访问string对象中的指定字符
string str = "test";
for(int i = 0;i<str.size();i++){
std::cout<<str.at(i)<<std::endl;
}
5.使用[]和at访问string对象中的字符的区别
使用[]访问时如果越界程序会直接挂掉,使用try{}catch{]不能捕获到异常
使用[]访问时如果越界程序会抛出一个out_of_ranged的异常,使用try{}catch{]可以捕获到该异常
标签:hid i++ 使用字符串 cat 管理 头文件 定义 nbsp 指定
原文地址:https://www.cnblogs.com/maycpou/p/14208560.html