A currency number stored as an 8-byte, two's complement integer, scaled by 10,000 to give a fixed-point number with 15 digits to the left of the decimal point and 4 digits to the right. This representation provides a range of ±922337203685477.5807. The CURRENCY data type is useful for calculations involving money, or for any fixed-point calculation where accuracy is particularly important.
typedef CY CURRENCY;
The data type is defined as a structure for working with currency more conveniently:
typedef struct tagCY
{
LONGLONG int64;
} CY;
#else
// Real definition that works with the C++ compiler.
typedef union tagCY {
struct {
#ifdef _MAC
long Hi;
unsigned long Lo;
#else
unsigned long Lo;
long Hi;
#endif
};
LONGLONG int64;
} CY;
#endif
#endif
// Size is 8.
typedef CY CURRENCY;
Windows NT: Use version 3.1 and later.
Windows: Use Windows 95 and later.
Header: Declared in mapidefs.h.