C++primer 9.5.2节练习
练习9.43、练习9.44
1 #include<iostream> 2 #include<vector> 3 #include<list> 4 #include <string> 5 #include <cstring> 6 7 using namespace std; 8 9 void change(string &s, string &oldVal, string &newVal); 10 11 int main() 12 { 13 string s{ "qwer though through" }; 14 string s1{ "though" }; 15 string s2{ "tho" }; 16 change(s, s1, s2); 17 cout << s << endl; 18 system("pause"); 19 return 0; 20 } 21 22 void change(string & s, string & oldVal, string & newVal) 23 { 24 for (int i = 0; i != s.size(); ++i) 25 { 26 if (s.substr(i, oldVal.size()) == oldVal) 27 { 28 //s.erase(i, oldVal.size()); 29 //s.insert(i, newVal); 30 s.replace(i, oldVal.size(), newVal); 31 } 32 } 33 }
练习9.45
1 #include<iostream> 2 #include<vector> 3 #include<list> 4 #include <string> 5 #include <cstring> 6 7 using namespace std; 8 9 void insert_str(string &s, string &s1, string &s2); 10 11 int main() 12 { 13 string s{ "qwer though through" }; 14 string s1{ "though" }; 15 string s2{ "tho" }; 16 insert_str(s, s1, s2); 17 cout << s << endl; 18 system("pause"); 19 return 0; 20 } 21 22 23 void insert_str(string &s, string &s1, string &s2) 24 { 25 auto it = s.begin(); 26 s.insert(0, s1); 27 s.append(s2); 28 }
练习9.46
1 #include<iostream> 2 #include<vector> 3 #include<list> 4 #include <string> 5 #include <cstring> 6 7 using namespace std; 8 9 void insert_str(string &s, string &s1, string &s2); 10 11 int main() 12 { 13 string s{ "qwer though through" }; 14 string s1{ "though" }; 15 string s2{ "tho" }; 16 insert_str(s, s1, s2); 17 cout << s << endl; 18 system("pause"); 19 return 0; 20 } 21 22 23 void insert_str(string &s, string &s1, string &s2) 24 { 25 s.insert(0, s1); 26 s.insert(s.size(), s2); 27 }
浙公网安备 33010602011771号