Changes the default size of the long double data type.
None
IA-32 architecture, Intel® 64 architecture, IA-64 architecture
Linux and Mac OS: | None |
Windows: | /Qlong-double |
None
OFF | The default size of the long double data type is 64 bits. |
The /Qlong-double option changes a long-double to an 80-bit data type. However, the alignment requirement of the data type is 16 bytes, and its size must be a multiple of its alignment, so the sizeof a long-double on Windows is 16 bytes as well. Only the lower 10 bytes (80 bits) of the 16 byte space will have valid data stored in it.
Furthermore, Microsoft libraries (such as printf) do not support long-double, so long doubles can only be passed to user written routines.
None