📅  最后修改于: 2023-12-03 15:06:33.306000             🧑  作者: Mango
在进行字符串操作时,有时需要将字符串从上到下进行反转。反转字符串即将原字符串按行翻转,如
原字符串: "hello\nworld\n"
反转后字符串:"dlrow\nolleh\n"
接下来我们将介绍如何使用C++语言实现该字符串反转操作。
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main()
{
string input = "hello\nworld\n";
vector<string> lines;
string temp = "";
// 将每一行按换行符分割存放到vector中
for (int i = 0; i < input.size(); i++)
{
if (input[i] != '\n')
{
temp += input[i];
}
else
{
lines.push_back(temp);
temp = "";
}
}
// 将vector中的记录倒序输出
for (int i = lines.size() - 1; i >= 0; i--)
{
cout << lines[i] << endl;
}
return 0;
}
该代码实现了从上到下的字符串反转操作,主要分为以下两步:
具体实现过程如下:
string
类存储输入的字符串input
vector<string>
类型的变量lines
,用于存放按行分割后的字符串内容string
类型的变量temp
,用于记录每一行的字符串内容for
循环遍历输入字符串的每一个字符temp
中temp
存入lines
中,并将temp
置空lines
中存放了按行分割后的字符串内容for
循环遍历lines
中的每一行字符串内容,从最后一行倒序输出到标准输出流中本文介绍了如何使用C++语言实现反转字符串操作,具体实现过程中,将原字符串按行进行处理并存储到vector中,再将vector中的内容倒序输出即可。该反转字符串操作不仅在程序开发中非常有用,也可以作为字符串处理算法的练手题目。