String类总结

(持续更新)

string类中,每个元素属于char类型,底层是一个顺序表的结构。

字符串的输入:

如果不带空格,则scanf和cin都可以输入,若输入的字符串带空格:1、scanf(“%[ ^\n ]d”); 

2、getline()(包含头文件) getline(cin,s);

3、字符串转化为字符数组:strcpy( p,s.c_str() ) 或 strcpy(p,s.data() )

其它:

 1 #include 
 2 #include 
 3 using namespace std;
 4 // 定义方式
 5 string s;        // 需要包含头文件iostream和using namespace std; 构造空的字符串
 6 string s(s1);    // 定义s1和s相等
 7 string s("abc"); // 定义s等于“abc”
 8 // 成员函数
 9 s.length();     //返回字符串长度
10 s.size();      // 和length差不多
11 s.swap(s1);    // 交换s和s1字符串
12 s.push_back('c');  // 在末尾添加一个字符
13 s.append("abc");   // 在末尾添加一个字符串
14 s.insert(2,"abc"); // 在下标为2的位置添加字符串“abc”
15 s.insert(2,3,'a'); // 在下标为2位置添加3个‘a'
16 s.erase(2); // 从下标2开始,后面全部删除
17 s.erase(2,1); //从下标2开始,后面删除一个
18 s.clear(); // 清空字符串
19 s.empty(); // 判空
20 reverse(s.begin(),s.end()); // 反转字符串,需要包含头文件 algorithm
21 s.find('a');  // 查找字符’a'
22 s.find("abc"); // 查找字符串“abc”
23 s.rfind('a');  // 从末尾查找字符‘a'
24 s.rfind("abc"); // 从末尾查找字符串“abc”
25 s.compare(s1); // 相等返回0,s小于s1返回-1,大于返回1

 

你可能感兴趣的:(String类总结)