C++程序設計中,&&和||的優先級問題
4 回答

達令說
TA貢獻1821條經驗 獲得超6個贊
&&比||的優先級高
如
真 || 真 && 假 結果為真
(真||真) && 假 結果為假
int a=3;
float f;
f=(float)a+3;
cout<<f<<endll;
這個如果改成
int a=3;
float f;
f=(float)(a+3);
cout<<f<<endll;
就會輸出6.0了
因為你的f=(float)a+3;會使(float)先與a結合.也就是說只強制轉換了a,然后與整型3相加.
當兩個不同類型的數據相加時.C語言會轉化成相同類型.于是a又被轉成了整型.然后再與3相加.得出6

拉風的咖菲貓
TA貢獻1995條經驗 獲得超2個贊
&&是先求左邊的值,如果是0則結果是0,否則再求右邊的值,如果是0則結果是0,否則結果是1
||是先求左邊的值,如果是1則結果是1,否則再求右邊的值,如果結果是1則結果是,否則結果是0
因為C++的ostream默認狀態下是不顯示結尾的0的,和printf的固定小數位數顯示方式不同。
- 4 回答
- 0 關注
- 1354 瀏覽
添加回答
舉報
0/150
提交
取消