gpt4 book ai didi

c++ - 如何在 C++ 的 while 循环中存储前一次迭代?

转载 作者:搜寻专家 更新时间:2023-10-31 00:42:01 24 4
gpt4 key购买 nike

我看到有类似标题的回答,但内容对我来说太密集了,因为我对 c++ 了解不多。

我是编程新手,我不知道如何在我的 while 循环中存储前一次迭代。我正在尝试使用 while 循环将用户文本写入文件,并以两个 \n 字符结束他们的输入。这就是我的问题所在,因为在我当前的代码中,输入以一个 enter 实例结束。

我的代码看起来像这样,但我知道 tempnew_advice 是一样的:

char new_advice, temp;
while( (!(new_advice == '\n' + '\n'))) && (!(temp == '\n')) )
{
temp = new_advice;
cin.get(new_advice);
fout.put(new_advice);
}

编辑*好的,我认为我不清楚我在问什么。

最初的作业说“允许用户输入建议,这样它可以是任意行数。用户被告知通过按两次回车键结束他或她的建议。然后你的程序可以测试到通过检查它何时读取连续两次出现的字符 '\n' 来查看它是否已到达输入末尾。”

这会改变我的问题的答案吗?

我现在尝试用代码来做到这一点:

char new_advice;
int temp = 0;

while(temp < 2)
{
if(new_advice == '\n')
{
temp = temp++;
}
cin.get(new_advice);
fout.put(new_advice);

}

但这也不起作用,我的程序无法将输入识别为结束程序。整个程序的上下文是否值得发布?

最佳答案

我真的不想回答你的具体问题,因为做你想做的事情的惯用方式是相当不同的,而且更简洁:

std::ofstream outfile("output.txt");

for (std::string line; std::getline(std::cin, line); )
{
if (line.empty()) { break; }

outfile << line << std::endl;
}

关于c++ - 如何在 C++ 的 while 循环中存储前一次迭代?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12468373/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com