Currency conversions and float64 considerations
Working with currency is always a tricky process. It can be tempting to represent money as a float64, but this can result in some pretty tricky (and wrong) rounding errors when doing calculations. For this reason, it's preferable to think of money in terms of cents and store it as an Int64.
When collecting user input from forms, the command line, or other sources, money is usually represented in dollar form. For this reason, it's best to treat it as a string and convert that string directly to pennies without floating point conversions. This recipe will present ways to convert a string representation of currency into an int64 (pennies) and back again.
Getting ready
Refer to the steps given in the Getting ready section of the Converting data types and interface casting recipe.
How to do it...
These steps cover writing and running your application:
- From your terminal/console application, create and navigate to the
chapter3/currency
directory. - Copy tests...