在我进行一个非常简单的编程练习之前,我遇到了输入结束符的问题。我写这个程序来检查,如果两个词在文中repetead:结束输入字符不起作用
string previous = ""; //initalized to "not a word"
string current; //current word
while (cin >> current) { //input operation
if (previous == current) // check if the word is the same as last
cout << "repetead words : " << current << '\n';
previous = current;
}
cout << previous << "\n" << current << "\n";
我的书上说的,如果我要终止输入操作,并跌出while循环我必须插入结束输入的字符,但是,如果我将这个字符插入到我的输入单词的同一行中,我将不会掉到循环中。只要将它插入换行符,它就可以工作。为什么?我必须在换行符中插入输入结束字符才能使其工作?
无论您使用的是Linux终端还是Windows命令窗口,它都是如何工作的,如果您希望程序是可移植的并且只使用标准C++,那么您可以做的事情就不多了。 – 2014-09-28 16:35:01