【发布时间】:2020-05-27 00:22:37
【问题描述】:
输入:this_is_a_[Beiju]_text
预期输出:This_is_a_[Beiju]_text
实际输出:this_is_a_[Beiju]_textt
似乎当代码结束时,它添加了一个额外的不需要的字符(注意末尾额外的“t”)。 代码:
#include <iostream>
#include <list>
using namespace std;
int main() {
list <char> text;
char current_char;
while(true){
// Revisa si llegamos al final del archivo
if(cin.peek() != char_traits<char>::eof()){
cin >> current_char;
text.push_back(current_char);
}
else{
break;
}
}
for (auto itr = text.begin(); itr != text.end(); itr++){
cout << *(itr);
}
return 0;
}
【问题讨论】: