是否有针对浮点数的特定于 Microsoft(对于 Microsoft 编译器)的数据类型
Is there a Microsoft-specific (for Microsoft compiler) data type for floating point numbers
Microsoft 的编译器是否有特定的数据类型来表示浮动数据点。我好像只找到float,double和long double
没有。在编写 Visual C++ v16 a.k.a Visual C++ 2019 时,不支持除 C 和 C++ 标准中定义的浮点数据类型之外的任何浮点数据类型。此外,与英特尔 x86/x64 目标上的 GCC 不同,double
和 long double
具有相同的 64 位表示。
这记录在 https://docs.microsoft.com/en-us/cpp/cpp/fundamental-types-cpp?view=msvc-160
Intel x86/x64 FPU在硬件上支持80位的数据类型,但没有数据类型直接支持。
另一方面,GCC 有许多扩展类型 https://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html,包括匹配硬件的 __float80
和 __float128
。 long double
与 GCC 上的 double
不同。
Microsoft 的编译器是否有特定的数据类型来表示浮动数据点。我好像只找到float,double和long double
没有。在编写 Visual C++ v16 a.k.a Visual C++ 2019 时,不支持除 C 和 C++ 标准中定义的浮点数据类型之外的任何浮点数据类型。此外,与英特尔 x86/x64 目标上的 GCC 不同,double
和 long double
具有相同的 64 位表示。
这记录在 https://docs.microsoft.com/en-us/cpp/cpp/fundamental-types-cpp?view=msvc-160
Intel x86/x64 FPU在硬件上支持80位的数据类型,但没有数据类型直接支持。
另一方面,GCC 有许多扩展类型 https://gcc.gnu.org/onlinedocs/gcc/Floating-Types.html,包括匹配硬件的 __float80
和 __float128
。 long double
与 GCC 上的 double
不同。