c++编程:反转字符串

cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
string s; // ✅ 用 string 代替 vector<char>
cin >> s; // ✅ 直接输入字符串
int len = s.size(); // ✅ 声明 len 变量
for(int i = 0, j = len - 1; i < len / 2; i++, j--) {
swap(s[i], s[j]); // ✅ 交换字符
}
cout << s << endl; // ✅ 直接输出字符串
return 0;
}
1. vector<char> 不能直接用 cin>> 输入 ❌
vector<char> s;
cin >> s; // ❌ 错误!vector 没有直接输入操作符
2. vector<char> 不能直接用 cout<< 输出 ❌
cout << s; // ❌ 错误!vector 没有直接输出操作符
如果用 vector<char> 的正确写法
cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
string str;
cin >> str;
vector<char> s;
for(int i = 0; i < str.length(); i++) {
s.push_back(str[i]);
}
// 使用 for 循环反转
for(int i = 0; i < s.size() / 2; i++) {
swap(s[i], s[s.size() - 1 - i]); // 交换对称位置的字符
}
for(int i = 0; i < s.size(); i++) {
cout << s[i];
}
cout << endl;
return 0;
}