2009-08-26 8 views
4

J'ai un NSDecimal dans une boucle de calculs serrés, où j'ai besoin de plancher la valeur. Je veux éviter de créer de gros objets NSDecimalNumber juste pour ça. Existe-t-il un moyen rentable d'obtenir un plancher? Ce plancher est juste nécessaire pour calculer combien de fois une autre valeur pourrait s'y intégrer, sans repos. L'API NSDecimal ne fournit pas quelque chose comme étage ...Façon légère de plancher un NSDecimal?

Répondre

6

Vous pouvez utiliser la fonction NSDecimalRound() avec le NSRoundDown mode d'arrondi:

NSDecimal d = ...; 
NSDecimal floored; 

NSDecimalRound(&floored, &d, 0, NSRoundDown); 

Pour plus d'informations jeter un oeil à la documentation here.

1
NSDecimal result; 
NSDecimalRound(&result, &decimal, 0, NSRoundDown); 

(non testé)

Questions connexes