关于C++的String用法(新手向)
添加时间:2013-8-5 点击量:
比来在接管c++入行向培训,因为本人之前学过一点c#,知道c#的string类型很是好用。但开端学c++发明string居然不是c++的根蒂根基类型,不科学啊!正好教员留个功课,请求收拾c++的string类用法,于是就研究了一下。
1.string常见的定义与初始化办法
//本文所有示例默认都须要引入<string>头文件,下同。
#include <string>
//string的默认机关函数,定义的s1为空。
string s1;
//建树一个变量名为s2的字符串,内容与s1雷同。
string s2(s1);
//建树一个变量名为s3的字符串,内容为“string”。
string s3(string);
//建树一个变量名为s4的字符串,内容为20个-(不包含单引号)。
string s4(20,-);
2.string对象的读写
string s;
//须要<iostream>头文件的支撑。
std::cin >> s;
std::cout << s <<endl;
3.string对象的操纵
//若是s字符串为空,则返回true,不然返回false,
//并将成果存入变量isEmpty。
bool isEmpty=s.empty();
//返回s字符串中的字符个数,并将成果存入变量i。
//重视:这里的s.size()值并不是int型,但可以直接隐式转换为int。
int i=s.size();
//显示s字串中第Count个字符(地位从0开端)。
int Count;
cin >> Count;
cout << s[Count] << endl;
//将s1与s2连接为一个新的字符串并存入s3。
s3=s1+s2;
//斗劲变量s1与s2的内容,相等返回true,不然返回false,
//并将成果存入变量isSame;
bool isSame=(s1==s2);
//清除s内的所有内容。
s.clear;
4.string对象的常用办法
#include stdafx.h
#include <iostream>
#include <string>
using namespace std;
int main()
{
//变量初始化。
string String1 = HelloWorld!ILoveCpp!;
string String2 = CodingChangeTheWorld!;
//assign,将字符串String1的第5个字符开端的6个字符存入String1。
//此项目组代码运行成果为“World!”。
String1.assign(String1,5,6);
cout << String1 <<endl;
//将字符串String2的第6个字符开端的6个字符存入String1。
//此项目组代码运行成果为“Change”。
String1.assign(String2,6,6);
cout << String1 << endl << endl;
String1 = HelloWorld!ILoveCpp!;
String2 = CodingChangeTheWorld!;
//将字符串String2连接到String1的末尾,并存入String1。
//此项目组代码运行成果为“HelloWorld!ILoveCpp!CodingChangeTheWorld!”。
String1.append(String2);
cout << String1 << endl;
//将字符串String2的第6个字符开端的6个字符连接到String1的末尾。
//此项目组代码运行成果为“HelloWorld!ILoveCpp!CodingChangeTheWorld!Change”。
String1.append(String2,6,6);
cout << String1 << endl << endl;
String1 = HelloWorld!ILoveCpp!;
String2 = CodingChangeTheWorld!;
//返回”Change“在String2字符中的地位(重视:从0开端)。
//此项目组代码运行成果为“6”.
cout << String2.find(Change) << endl << endl;
String1 = HelloWorld!ILoveCpp!;
String2 = CodingChangeTheWorld!;
//将String2插入String1的第11个字符后。
//此项目组代码运行成果为“HelloWorld!CodingChangeTheWorld!ILoveCpp!”。
String1.(11,String2);
cout << String1 << endl << endl;
//返回String1的长度(重视:从0开端)。
//此项目组代码运行成果为“41”。
cout << String1.length() << endl << endl;
system(pause);
return 0;
}
参考文献:
《C++Primer中文第四版》国民邮电出版社
《C++ Gossip: 应用 string 型態》 http://openhome.cc/Gossip/CppGossip/string2.html
读书,不要想着实用,更不要有功利心。读书只为了自身的修养。邂逅一本好书如同邂逅一位知己,邂逅一个完美之人。有时心生敬意,有时怦然心动。仿佛你心底埋藏多年的话,作者替你说了出来,你们在时光深处倾心相遇的一瞬间,情投意合,心旷神怡。
比来在接管c++入行向培训,因为本人之前学过一点c#,知道c#的string类型很是好用。但开端学c++发明string居然不是c++的根蒂根基类型,不科学啊!正好教员留个功课,请求收拾c++的string类用法,于是就研究了一下。
1.string常见的定义与初始化办法
//本文所有示例默认都须要引入<string>头文件,下同。
#include <string>
//string的默认机关函数,定义的s1为空。
string s1;
//建树一个变量名为s2的字符串,内容与s1雷同。
string s2(s1);
//建树一个变量名为s3的字符串,内容为“string”。
string s3(string);
//建树一个变量名为s4的字符串,内容为20个-(不包含单引号)。
string s4(20,-);
2.string对象的读写
string s;
//须要<iostream>头文件的支撑。
std::cin >> s;
std::cout << s <<endl;
3.string对象的操纵
//若是s字符串为空,则返回true,不然返回false,
//并将成果存入变量isEmpty。
bool isEmpty=s.empty();
//返回s字符串中的字符个数,并将成果存入变量i。
//重视:这里的s.size()值并不是int型,但可以直接隐式转换为int。
int i=s.size();
//显示s字串中第Count个字符(地位从0开端)。
int Count;
cin >> Count;
cout << s[Count] << endl;
//将s1与s2连接为一个新的字符串并存入s3。
s3=s1+s2;
//斗劲变量s1与s2的内容,相等返回true,不然返回false,
//并将成果存入变量isSame;
bool isSame=(s1==s2);
//清除s内的所有内容。
s.clear;
4.string对象的常用办法
#include stdafx.h
#include <iostream>
#include <string>
using namespace std;
int main()
{
//变量初始化。
string String1 = HelloWorld!ILoveCpp!;
string String2 = CodingChangeTheWorld!;
//assign,将字符串String1的第5个字符开端的6个字符存入String1。
//此项目组代码运行成果为“World!”。
String1.assign(String1,5,6);
cout << String1 <<endl;
//将字符串String2的第6个字符开端的6个字符存入String1。
//此项目组代码运行成果为“Change”。
String1.assign(String2,6,6);
cout << String1 << endl << endl;
String1 = HelloWorld!ILoveCpp!;
String2 = CodingChangeTheWorld!;
//将字符串String2连接到String1的末尾,并存入String1。
//此项目组代码运行成果为“HelloWorld!ILoveCpp!CodingChangeTheWorld!”。
String1.append(String2);
cout << String1 << endl;
//将字符串String2的第6个字符开端的6个字符连接到String1的末尾。
//此项目组代码运行成果为“HelloWorld!ILoveCpp!CodingChangeTheWorld!Change”。
String1.append(String2,6,6);
cout << String1 << endl << endl;
String1 = HelloWorld!ILoveCpp!;
String2 = CodingChangeTheWorld!;
//返回”Change“在String2字符中的地位(重视:从0开端)。
//此项目组代码运行成果为“6”.
cout << String2.find(Change) << endl << endl;
String1 = HelloWorld!ILoveCpp!;
String2 = CodingChangeTheWorld!;
//将String2插入String1的第11个字符后。
//此项目组代码运行成果为“HelloWorld!CodingChangeTheWorld!ILoveCpp!”。
String1.(11,String2);
cout << String1 << endl << endl;
//返回String1的长度(重视:从0开端)。
//此项目组代码运行成果为“41”。
cout << String1.length() << endl << endl;
system(pause);
return 0;
}
参考文献:
《C++Primer中文第四版》国民邮电出版社
《C++ Gossip: 应用 string 型態》 http://openhome.cc/Gossip/CppGossip/string2.html
读书,不要想着实用,更不要有功利心。读书只为了自身的修养。邂逅一本好书如同邂逅一位知己,邂逅一个完美之人。有时心生敬意,有时怦然心动。仿佛你心底埋藏多年的话,作者替你说了出来,你们在时光深处倾心相遇的一瞬间,情投意合,心旷神怡。