C++ 即使只满足一个条件,if 语句仍然为真

问题描述 投票:0回答:1

我正在用 C++ 创建一个 tic tac toe 程序,并且快要完成了,我遇到的问题是游戏何时需要以平局结束。我创建了一个

if-statement
来检查何时选择特定组合,即使只满足一个条件,它也会发现它为真。

这是代码...

//takes the users selections and sees if all spots are filled in without a match.
if((b1== "O" || "X") && (b2 == "O" || "X") && (b3 == "O" || "X")){
        cout << "The game ended in a tie.";
      // Flip = 3 ends the game in a tie.
        flip = 3;
    }


例如...当我将“b1”更改为“O”或“X”时,即使“b2”和“b3”仍然为空,游戏也会以平局结束。
c++ if-statement operators
1个回答
3
投票

条件:

b1== "O" || "X"

评价为:

(b1=="O") || "X"

这始终是正确的。 您可能想要:

(b1=="O" || b1=="X")
© www.soinside.com 2019 - 2024. All rights reserved.