|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Nov 2004
Città: Roma e Palermo
Messaggi: 204
|
[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 |
|
|
|
|
|
#2 | |
|
Member
Iscritto dal: Dec 2006
Messaggi: 198
|
Quote:
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. |
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
|
Quote:
__________________
Khelidan |
|
|
|
|
|
|
#4 | |
|
Member
Iscritto dal: Nov 2004
Città: Roma e Palermo
Messaggi: 204
|
Quote:
Perchè dici che non è così in C++? Mi si è presentato il problema proprio in C++ ...è che il matlab mi ha viziato troppo ^^' |
|
|
|
|
|
|
#5 |
|
Member
Iscritto dal: Dec 2006
Messaggi: 198
|
|
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Dec 2005
Messaggi: 558
|
puoi fare un cast implicito semplicemente scrivendo 1./256 o 1/256.
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:03.




















