0

我想这个真的很简单,但我不知道有什么问题。问题是:

如果这有效:

char input;
do {
    cin >> input;
} while (input != '1');
system ("pause");

那么,为什么不这样做:

char input;
do {
    cin >> input;
} while ((input != '1') || (input != '2'));
system ("pause");

提前致谢。

4

1 回答 1

8
(input != '1') || (input != '2')

此表达式的计算结果始终为,true因为input不能同时是'1'两者'2'

您更有可能使用&&: 替换||&&,表达式将计算为trueif inputis not'1''2'

于 2012-08-22T01:51:16.470 回答