#include
#include
using namespace std;
int main() {
string a("hablee");
string::iterator p = a.begin(); // 拿到迭代器head
p++; // 现在指向a
a.insert(p, 'Y'); // 使得p指向Y,即在a前面插入y
cout << a << endl;
return 0;
}
2. 在某个位置插入字符串
2.1 使用迭代器
比如要在hablee
这个字符串前面的h
字符后面(a
的前面)插入yuki
这个字符串。
#include
#include
using namespace std;
int main() {
string a("hablee");
string::iterator p = a.begin(); // 拿到迭代器head
p++; // 现在指向a
string b("yuki");
string::iterator b_begin = b.begin(), b_end = b.end();
a.insert(p, b_begin, b_end);
cout << a << endl;
return 0;
}
2.2 使用下标
#include
#include
using namespace std;
int main() {
string a("hablee");
string b("yuki");
// 在a下标为1的地方,插入b从0下标开始数的4个字符
a.insert(1, b, 0, 4);
cout << a << endl;
return 0;
}
3. 对字符串重新赋值
#include
#include
using namespace std;
int main() {
string a("hablee");
a.assign(6, 'y'); // 6个y
cout << a << endl;
return 0;
}
3. 删除
3.1 删除某个字符
同样也是使用迭代器
#include
#include
using namespace std;
int main() {
string a("hablee");
// 现在想删除a
string::iterator p = a.begin();
p++; // 指向a
a.erase(p);
cout << a << endl;
return 0;
}
3.2 删除某一段字符串
同样也是使用迭代器。注意结果是左闭右开区间
#include
#include
using namespace std;
int main() {
string a("hablee");
string::iterator p1 = a.begin(), p2 = a.end();
p1++; // 指向a
p2--; // 指向最后一个e
a.erase(p1,p2); // [p1,p2)
cout << a << endl;
return 0;
}
4. 修改字符串中某个字符
#include
#include
using namespace std;
int main() {
string a("hablee");
string b("yuki");
// 直接使用下标修改某个字符
a[1] = 'A';
cout << a << endl;
return 0;
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)