C++的substr、append、erase、to_string函数(很简单,但容易忘)

C++中string erase函数的使用

erase函数的原型如下:
(1)string& erase ( size_t pos = 0, size_t n = npos ); //注意,返回的是对象的引用
(2)iterator erase ( iterator position );
(3)iterator erase ( iterator first, iterator last );
也就是说有三种用法:
(1)erase(pos,n); 删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符
(2)erase(position);删除position处的一个字符(position是个string类型的迭代器)
(3)erase(first,last);删除从first到last之间的字符(first和last都是迭代器)

C++string中substr函数的使用

string substr(size_type _Off = 0,size_type _Count = npos) const; //注意,返回的是对象的copy

#include 
#include 
using namespace std;

int main()
{
	
	string s = "abcdefg";
	cout << s.substr() << endl;//abcdefg
	cout << s.substr(0) << endl;//abcdefg
	cout << s.substr(1) << endl;//bcdefg
	cout << s.substr(1,3) << endl;//bcd
	system("pause");
	return 0;
}

C++的substr、append、erase、to_string函数(很简单,但容易忘)_第1张图片

C++string中append函数的使用

其实我更喜欢直接用string类中的重载过的+=,方便!
string& append (const string& str); //注意,返回的是对象的引用
string& append (const string& str, size_t subpos, size_t sublen);
string& append (const char* s);
string& append (const char* s, size_t n);
string& append (size_t n, char c); //这个很常用

#include 
#include 
using namespace std;


int main()
{
	
	string s1 = "abc";
	string s2 = "def";
	
	s1.append(s2,1,2);
	cout << s1 << endl;//abcef
	system("pause");
	return 0;
}

C++string中to_string函数的使用

函数原型:
string to_string (int val);
string to_string (long val);
string to_string (long long val);
string to_string (unsigned val);
string to_string (unsigned long val);
string to_string (unsigned long long val);
string to_string (float val);
string to_string (double val);
string to_string (long double val);

功能:
将数值转化为字符串。返回对应的字符串。

#include 
#include 
using namespace std;


int main()
{

	string s1 = "abc";
	int c = 100;

	s1.append(to_string(c));
	cout << s1 << endl;//abc100
	system("pause");
	return 0;
}

你可能感兴趣的:(C++的substr、append、erase、to_string函数(很简单,但容易忘))