1. 程式人生 > >c++的if語句中的110為什麽不等於110?

c++的if語句中的110為什麽不等於110?

分享圖片 圖片 直接 image 表達 == 代碼 else png

技術分享圖片

技術分享圖片

從上圖可以看出,當表達式1.1*x被直接放進if的判斷括號中時1.1*x不等於y,但是將1.1*x賦值給z時,z與y相等,這是為什麽?(以下為不等價時的代碼)

#include<stdio.h>
int main()
{
int x=100,y=110;
if(1.1*x==y){
printf("1");
}else{
printf("2");
}
return 0;
}

c++的if語句中的110為什麽不等於110?