#include <iostream>
using namespace std ;
int main()
{
int a=5, b=4;
cout<< a==b;
}
爲什麼我不能打印這段代碼。我如何打印布爾值?在C++中打印布爾值
#include <iostream>
using namespace std ;
int main()
{
int a=5, b=4;
cout<< a==b;
}
爲什麼我不能打印這段代碼。我如何打印布爾值?在C++中打印布爾值
你必須把括號圍繞您的測試:
cout<< (a==b);
但爲什麼這個工程,但我的不是? – user1559792
由於運算符<<優先於==,所以像運算符\ *優先於+當您執行1 + 2 \ * 3時 – alestanis
使用std::boolalpha打印爲true
或false
。並添加括號,請參閱Vaughn Cato的解答。
#include <iostream>
#include <iomanip>
using namespace std ;
int main()
{
int a=5, b=4;
cout<< boolalpha << (a==b);
}
您正在處理運算符優先級問題:
cout << a==b;
被解釋爲
(cout << a) == b;
因爲< <比==更高的優先級。
你有沒有試過把'a == b'放在括號裏? –