0

私はdevkitproを使用したnds用のc++での別のnewbコーディングですが、驚くべきことに、これについてオンラインで何も見つかりませんでした。次のようなorステートメントをコーディングするにはどうすればよいですか。

if ((keys & KEY_L && LR==true) or (keys & KEY_X && LR==false))
{
    ...
}

「Lキーが押された場合...」と言いたい場合は、「if(keys&KEY_L)...」を使用します。

では、 「LRが真でLキーが押された場合、またはLRが偽でXキーが押された場合」とはどういう意味でしょうか。

4

4 に答える 4

2

LR == true二重等号に注意してください。そうでない場合は、比較ではなく割り当てを記述しています!)不要です。単に。を使用してください。同様に、の代わりにを使用します。また、いくつかの括弧を追加しても問題はありません。LR!LRLR == false

if (((keys & KEY_L) && LR) || ((keys & KEY_X) && !LR))
{
    ...
}
于 2013-03-04T19:28:10.560 に答える
0

ほぼ同じよう==に、同等性の比較に使用します。

if ((keys & KEY_L && LR==true) || (keys & KEY_X && LR==false))
{
    ...
}

動作しorますが、これはの代替トークンにすぎません||。さらに、に変更LR==falseすることもできます!LR

于 2013-03-04T19:27:57.860 に答える
0

あなたは近くにいます。奇妙な理由で、&&and||演算子は|よりも優先されます。および&、したがって、いくつかの追加の括弧が必要です。

そして、等しいかどうかをチェックするために==を使用する必要があります。

これを変える:

if ((keys & KEY_L && LR=true) or (keys & KEY_X && LR=false))

これに:

if (((keys & KEY_L) && LR==true) or ((keys & KEY_X) && LR==false))
于 2013-03-04T19:29:28.417 に答える
-1
  1. との違いを学び&ます&&
  2. との違いを学び==ます=
  3. 仕組みを学びますifif(val == true)と同じif(val)です...
  4. 括弧で囲まれたグループ化を使用して、より小さなブール式を作成し、それらを構築します。
于 2013-03-04T19:28:09.217 に答える