SORU
15 Kasım 2012, PERŞEMBE


1.0 ile çarpma hassas ve dönüşüm yüzer int

Güvenli 0 ** durum, herhangi bir tam sayı i için doğru olduğunu varsayalım.

CEVAP
15 Kasım 2012, PERŞEMBE


Hayır.

i yeterince büyük O int(float(i)) != i (farz kayan nokta IEEE-754 tek hassas, i = 0x1000001 yeter senaryo bu) o zaman bu yanlış, çünkü çarpma 1.0f kuvvetler dönüşüm için float hangi değişiklikleri değeri olsa da bir sonraki çarpma değil.

Eğer i 32-bit tamsayı ve double IEEE-754 çift, o zaman bir ise . ancak, ^em>int(i*1.0) == i Bu doğru.


Tamamen açık, 1.0f çarpma olmak içinkesin. Olmayabilir float 11 *dönüştürme.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canal TekZoom

    Canal TekZoo

    1 NİSAN 2012
  • CareyHolzman

    CareyHolzman

    24 Ocak 2008
  • jagadambarecords

    jagadambarec

    13 AĞUSTOS 2008