View Full Version : [C++] perchč ((double)(1/256)) č uguale a zero?
Uso eclipse e gcc.
Ma č possibile che faccia zero e che l'operatore divisione sia cosė inutile? ogni volta che faccio operazioni miste tra double e int devo quindi OBBLIGATORIAMENTE andare a castare ogni valore intero per trasformarlo in double prima di eseguire la divisione?
cosė infatti funziona: ((double)1)/256
Uso eclipse e gcc.
Ma č possibile che faccia zero e che l'operatore divisione sia cosė inutile? ogni volta che faccio operazioni miste tra double e int devo quindi OBBLIGATORIAMENTE andare a castare ogni valore intero per trasformarlo in double prima di eseguire la divisione?
cosė infatti funziona: ((double)1)/256
Beh, vedo che ti sei risposto da solo :D
int / int -> int. Se vuoi un risultato in virgola devi perforza "trasformare" (castare) uno dei due a double o float. Non č cosė solo in C++, cmq.
khelidan1980
08-10-2009, 11:44
Uso eclipse e gcc.
Ma č possibile che faccia zero e che l'operatore divisione sia cosė inutile? ogni volta che faccio operazioni miste tra double e int devo quindi OBBLIGATORIAMENTE andare a castare ogni valore intero per trasformarlo in double prima di eseguire la divisione?
cosė infatti funziona: ((double)1)/256
pretendi che ti faccia un cast da int a double automaticamente?:eek:
Beh, vedo che ti sei risposto da solo :D
int / int -> int. Se vuoi un risultato in virgola devi perforza "trasformare" (castare) uno dei due a double o float. Non č cosė solo in C++, cmq.
si praticamente :D
Perchč dici che non č cosė in C++? Mi si č presentato il problema proprio in C++ :D
...č che il matlab mi ha viziato troppo ^^'
si praticamente :D
Perchč dici che non č cosė in C++? Mi si č presentato il problema proprio in C++ :D
...č che il matlab mi ha viziato troppo ^^'
No no, ho scritto "non č cosė solo in C++", intendo che anche altri linguaggi si comportano nello stesso modo.
puoi fare un cast implicito semplicemente scrivendo 1./256 o 1/256.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.