草庐IT

c++ - 标准对 std::pow、std::log 等 cmath 函数有何看法?

标准是否保证函数在所有实现中返回完全相同的结果?以32位IEEEfloat的pow(float,float)为例。如果传入相同的两个float,所有实现的结果是否相同?或者标准是否允许根据用于实现pow的算法的微小差异提供一些灵active? 最佳答案 不,C++标准不要求cmath函数的结果在所有实现中都相同。对于初学者,您可能无法获得IEEE-754/IEC60559浮点运算。也就是说,如果一个实现确实使用了IEC60559并定义了__STDC_IEC_559__,那么它必须遵守C标准的附件F(是的,您的问题是关于C++,但C+

c++ - C 和 C++ 中 float 和 double 的大小是多少?

这个问题在这里已经有了答案:Fixed-sizefloatingpointtypes(4个回答)关闭8年前.我想看看是否有任何类似于uint32_t的标准类型,它总是会映射到32位无符号整数类型,但我找不到。float的大小在所有平台上都是4字节吗?double的大小总是8吗?这两个标准对此事有任何说明吗?我想确保我的大小在所有平台(x86和x64)上始终相同,因此我使用标准int类型,但我找不到float和双。 最佳答案 摘自C99标准,规范性附件F(C++标准没有明确提及此附件,尽管它包括所有受影响的功能,每个引用都没有更改。此

c++ - C 和 C++ 中 float 和 double 的大小是多少?

这个问题在这里已经有了答案:Fixed-sizefloatingpointtypes(4个回答)关闭8年前.我想看看是否有任何类似于uint32_t的标准类型,它总是会映射到32位无符号整数类型,但我找不到。float的大小在所有平台上都是4字节吗?double的大小总是8吗?这两个标准对此事有任何说明吗?我想确保我的大小在所有平台(x86和x64)上始终相同,因此我使用标准int类型,但我找不到float和双。 最佳答案 摘自C99标准,规范性附件F(C++标准没有明确提及此附件,尽管它包括所有受影响的功能,每个引用都没有更改。此