0

このコードは機能しません。助言がありますか?

float tempNum = 0.590000;
int temporary;
if (tempNum >= 0.590000 && tempNum <= 0.610000){
    temporary = 15;
}
// temporary yields zero
4

1 に答える 1

1

それで:

デフォルトでは、0.590000はDOUBLEです

だからfloat tempNum = 0.59000キャストを引き起こします。

これを証明するには:

float tempNum = 0.590000f;
int temporary;
if (tempNum >= 0.590000f && tempNum <= 0.610000f){
    temporary = 15;
}

したがって、次のことを覚えておいてください。

aaa.aaaDOUBLEです

aaa.aaafFLOATです

于 2012-10-18T17:17:27.847 に答える