cb18a_c++_修改string对象的方法
cb18a_c++_修改string对象的方法
s.insert(p,t)
s.insert(p, 'A'); //迭代器前插入A
s.insert<p,n,t)
s.insert(p, 3, 'B');//迭代器p前插入3个B
s.insert(p,b,e)
string::iterator b = s2.begin();
string::iterator e = s2.end();
p = s.begin();
s.insert(p, b, e);
s.assign(b,e),
s.assign(b, e); //b,e指向的s2开头与结束,所以s=s2;
s.assign(n,t)
s.erase(p)
s.erase(b,e) //迭代器,b,begin,e,end();
s.insert(pos,n,c)//pos下标
s.insert(pos,s2)
s.insert(pos,s2,pos2,len)
s.insert(pos,cp,len)
s.insert(pos,cp)
s.assign(s2)
s.assign(s2,pos2,len)
s.assign(cp,len)
s.assign(cp)
s.erase(pos,len)
欢迎讨论,相互学习。 txwtech@163.com
1 /*cb18a_c++_修改string对象的方法 2 s.insert(p,t) 3 s.insert(p, 'A'); //迭代器前插入A 4 s.insert<p,n,t) 5 s.insert(p, 3, 'B');//迭代器p前插入3个B 6 s.insert(p,b,e) 7 string::iterator b = s2.begin(); 8 string::iterator e = s2.end(); 9 p = s.begin(); 10 s.insert(p, b, e); 11 12 s.assign(b,e), 13 s.assign(b, e); //b,e指向的s2开头与结束,所以s=s2; 14 s.assign(n,t) 15 s.erase(p) 16 s.erase(b,e) //迭代器,b,begin,e,end(); 17 18 s.insert(pos,n,c)//pos下标 19 s.insert(pos,s2) 20 s.insert(pos,s2,pos2,len) 21 s.insert(pos,cp,len) 22 s.insert(pos,cp) 23 s.assign(s2) 24 s.assign(s2,pos2,len) 25 s.assign(cp,len) 26 s.assign(cp) 27 s.erase(pos,len) 28 29 欢迎讨论,相互学习。 txwtech@163.com 30 */ 31 32 #include <iostream> 33 #include <string> 34 35 using namespace std; 36 37 int main() 38 { 39 string s("hello"); 40 string s2("abcdef"); 41 string::iterator p = s.begin(); 42 p++; 43 s.insert(p, 'A'); //迭代器前插入A 44 cout << s << endl; 45 46 s.insert(p, 3, 'B');//迭代器p前插入3个B 47 cout << s << endl; 48 49 string::iterator b = s2.begin(); 50 string::iterator e = s2.end(); 51 p = s.begin(); 52 s.insert(p, b, e); 53 cout << s << endl; 54 55 s = "hello"; 56 cout << "重新赋值: s=: " << s << endl; 57 s.assign(b, e); //b,e指向的s2开头与结束,所以s=s2; 58 cout << "b,e指向的s2开头与结束,所以s=s2: 新结果是:" << s << endl; 59 60 s.assign(8,'K');//赋值为8个K 61 62 s = "abcdef"; 63 p = s.begin(); 64 s.erase(p);//删除a, 65 cout << "删除a,后"<<s << endl; 66 67 p = s.begin(); 68 p++; 69 p++; 70 string::iterator p2 = s.end(); 71 p2--; 72 s.erase(p, p2); 73 cout << "删除p到p2的内容:结果为:" << endl; 74 75 76 s = "hello"; 77 s2 = "abc"; 78 s.insert(0, 3, 'A'); 79 cout << "使用数组下标插入数据:0开始,插入3个A:" << s << endl; 80 81 s.insert(5, s2);// 82 cout << "使用数组下标5位置插入数据:5开始,插入s2字符串" << s << endl; 83 84 s2 = "123456"; 85 s.insert(0, s2, 2, 3); 86 cout << "0位置插入s2的位置2,连续3个字符 :" << s << endl; 87 88 const char *cp = "Stately plump Buck"; 89 s.assign(cp, 7); 90 cout <<"复制cp指针开始的连续7个字符: "<< s << endl; 91 92 s.assign(cp); //s=cp; 93 s = "hello"; 94 s.insert(0, cp, 7);// 95 cout << "0开始插入,cp位置开始,连续7个: " << endl; 96 97 s.insert(0, cp); 98 cout << "全部数据插入: " << s << endl; 99 100 s = "hello"; 101 s2 = "abdef"; 102 103 s.assign(s2, 2, 3); 104 cout << "复制s2里面,2开始,连续3个字符" << s << endl; 105 s.assign(s2); 106 cout << "s=s2: " << endl; 107 108 s.erase(2, 3); 109 cout << "删除s里面2开始联系3个字符:" << s << endl; 110 111 s = "123456789"; 112 s.erase(s.size() - 5, 5); 113 cout << "删除最后5个数: " << s<<endl; 114 115 s.insert(s.size(), 5, '!'); 116 cout << "最后插入5个感叹号" << s << endl; 117 118 s = "abc"; 119 s.erase(0, 1).insert(0, "A"); 120 cout << "删除a,插入大写A: " << s << endl; 121 s = "abc"; 122 s[0] = 'A'; 123 cout << "数组索引下标直接替换修改: " << s << endl; 124 return 0; 125 }
欢迎讨论,相互学习。
cdtxw@foxmail.com