我是编程新手。任何人都可以帮助我如何做到这一点。我的输入文件是这样的
这
狗
是
跑步
我需要得到这样的输出
狗
狗是
在跑
那就是我必须阅读相邻的单词对。我如何在 C++ 中做到这一点?
我是编程新手。任何人都可以帮助我如何做到这一点。我的输入文件是这样的
这
狗
是
跑步
我需要得到这样的输出
狗
狗是
在跑
那就是我必须阅读相邻的单词对。我如何在 C++ 中做到这一点?
这是我的新手 C++ 方法(我只是 C++ 的初学者)。我敢肯定,更有经验的 C++ 开发人员会想出更好的东西 :-)
#include <fstream>
#include <iostream>
#include <string>
int main()
{
std::ifstream file("data.txt");
std::string lastWord, thisWord;
std::getline(file, lastWord);
while (std::getline(file, thisWord))
{
std::cout << lastWord << " " << thisWord << '\n';
lastWord = thisWord;
}
}
虽然我认为@dreamlax 已经展示了一些不错的代码,但我认为我会做一些不同的事情:
#include <fstream>
#include <string>
#include <iostream>
int main() {
std::string words[2];
std::ifstream file("data.txt");
std::getline(file, words[1]);
for (int current = 0; std::getline(file, words[current]); current ^= 1)
std::cout << words[current] << ' ' << words[current^1] << "\n";
}
这会稍微缩短代码(有点好)并避免不必要地复制字符串(更好)。