这段代码只是为了实现一个功能,当您输入两次相同的字符串时,该功能将停止。
string predata;
string c_data; //current data
cout << "please input string data" << endl;
//loop
while (cin >> c_data) {
if (c_data == predata) {
cout << "the " << c_data << " is the same one" << endl;
break;
}
else {
predata = c_data;
}
cout << "please input next word" << endl;
}
if (c_data != predata)
cout << "there's no repeated word" << endl;
问题:当我用CTRL-D停止cin时,c_data没有变化,永远不会输出“没有重复词”,那我该如何判断呢?
PS:这是《c++入门》中的一个练习,答题书上的代码也没有解决问题。