语言:c++
头文件:#include<string>
函数:
1.string.begin()和string.end()
begin():
返回指向字符串第一个字符的迭代器。
end() : 返回字符串的结束字符,不是字符串的最后一个字符,如果要输出最后一个需对其进行-1操作;
2.string.length()
length() : 返回字符串的长度;
例如:1. 2.
#include <iostream>
#include <string>
using namespace std;
int main()
{
string str("Test string");
for (string::iterator it = str.begin(); it != str.end(); ++it)
cout << *it;
cout << '\n';
cout << *str.begin()<<endl;
cout << *(--str.end()) << endl;
cout << str.length() << endl;
system("pause");
}
结果:
Test string
T
g
11
3.string.append()
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);
template <class InputIterator>
string& append (InputIterator first, InputIterator last);
append() :
通过在当前值的结尾处附加其他字符来扩展字符串:,通俗的讲这个函数相当于两个字符串的合并,具体如何合并,根据其中不同参数决定
例如:3.
#include <iostream>
#include <string>
using namespace std;
int main ()
{
string str;
string str2="Writing ";
string str3="print 10 and then 5 more";
// used in the same order as described above:
str.append(str2); // "Writing "
str.append(str3,6,3); // "10 "
str.append("dots are cool",5); // "dots "
str.append("here: "); // "here: "
str.append(10u,'.'); // ".........."
str.append(str3.begin()+8,str3.end()); // " and then 5 more"
str.append<int>(5,0x2E); // "....."
cout << str << '\n';
system("pause");
}
结果:
Writing 10 dots here: .......... and then 5 more
4.string.assign()
string& assign (const string& str);
string& assign (const string& str, size_t subpos, size_t sublen);
string& assign (const char* s);
string& assign (const char* s, size_t n);
string& assign (size_t n, char c);
template <class InputIterator>
string& assign (InputIterator first, InputIterator last);
assign() : 为字符串分配一个新值,替换其当前内容
// string::assign
#include <iostream>
#include <string>
using namespace std;
int main ()
{
string str;
string base="The quick brown fox jumps over a lazy dog.";
// used in the same order as described above:
str.assign(base);
cout << str << '\n';
str.assign(base,10,9);
cout << str << '\n'; // "brown fox"
str.assign("pangrams are cool",7);
cout << str << '\n'; // "pangram"
str.assign("c-string");
cout << str << '\n'; // "c-string"
str.assign(10,'*');
cout << str << '\n'; // "**********"
str.assign<int>(10,0x2D);
cout << str << '\n'; // "----------"
str.assign(base.begin()+16,base.end()-12);
cout << str << '\n'; // "fox jumps over"
return 0;
}
结果:
The quick brown fox jumps over a lazy dog. brown fox pangram c-string ********** ---------- fox jumps over
超出字符数上限
请输入文字或网站地址,您也可以直接
上传文档。