-7
#include "stdafx.h"
#include <iostream>
int x = 0;
int main(){
std::cin >> x;
if (x == 5 || 6) {
std::cout << "5 or 6\n";
}
else {
std::cout << "Not 5 or 6\n";
}
return 0;
}
この単純なコードは、何番目の数値を入れても、コンソールに「5または6」を返します。なぜ私は本当に理解していない。 ||または演算子であるなら、それはうまくいくはずです。 xが5または6の場合は、「5または6」と表示されます。表示されていない場合は、「Not 5 or 6」を表示します。誰か説明してもらえますか?"Or"演算子はどのように動作しますか? (In C++)
'x == 5 || 「6」は、* x * = 5が真*であるか、または* 6が真であり、後者が常に真である場合を意味する。 'x'が' 5'か '6'かどうかをテストするには' x == 5 || x == 6 'である。 – Biffen
「6」は真ではありません。なぜなら、ゼロでないからです。 – dan04
おそらくあなたがすることは、 '(x == 5 || x == 6)' – SunKnight0