草庐IT

double-dispatch

全部标签

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++中long double的精度是多少?

有人知道如何在特定平台上找出longdouble的精度吗?我似乎在17位十进制数字后失去了精度,这与我仅使用double时相同。我希望得到更多,因为double在我的平台上用8个字节表示,而longdouble是12个字节。在您问之前,这是针对欧拉计划的,所以是的,我确实需要超过17位数字。:)编辑:感谢您的快速回复。我刚刚确认在我的系统上使用longdouble只能得到18位十进制数字。 最佳答案 您可以通过std::numeric_limits:找到#include//std::cout#include//std::numeri

c++ - C++中long double的精度是多少?

有人知道如何在特定平台上找出longdouble的精度吗?我似乎在17位十进制数字后失去了精度,这与我仅使用double时相同。我希望得到更多,因为double在我的平台上用8个字节表示,而longdouble是12个字节。在您问之前,这是针对欧拉计划的,所以是的,我确实需要超过17位数字。:)编辑:感谢您的快速回复。我刚刚确认在我的系统上使用longdouble只能得到18位十进制数字。 最佳答案 您可以通过std::numeric_limits:找到#include//std::cout#include//std::numeri

python - 'double_scalars 中遇到无效值' 警告,可能是 numpy

当我运行我的代码时,我会偶尔收到这些警告,总是四人一组。我试图通过在某些语句之前和之后放置调试消息来定位源。Warning:invalidvalueencounteredindouble_scalarsWarning:invalidvalueencounteredindouble_scalarsWarning:invalidvalueencounteredindouble_scalarsWarning:invalidvalueencounteredindouble_scalars这是一个Numpy警告吗,什么是双标量?来self使用的Numpymin(),argmin(),mean()

python - 'double_scalars 中遇到无效值' 警告,可能是 numpy

当我运行我的代码时,我会偶尔收到这些警告,总是四人一组。我试图通过在某些语句之前和之后放置调试消息来定位源。Warning:invalidvalueencounteredindouble_scalarsWarning:invalidvalueencounteredindouble_scalarsWarning:invalidvalueencounteredindouble_scalarsWarning:invalidvalueencounteredindouble_scalars这是一个Numpy警告吗,什么是双标量?来self使用的Numpymin(),argmin(),mean()

double、float、long占几个字节?

16位编译器char:1个字节char*(即指针变量):2个字节shortint:2个字节int:2个字节unsignedint:2个字节float:4个字节double:8个字节long:4个字节longlong:8个字节unsignedlong:4个字节32位编译器char:1个字节char*(即指针变量):4个字节(32位的寻址空间是2^32,即32个bit,也就是4个字节。同理64位编译器)shortint:2个字节int:4个字节unsignedint:4个字节float:4个字节double:8个字节long:4个字节longlong:8个字节unsignedlong:4个字节64

java - List<Double> 使用双 [] 的 RAM?

Java专家强调避免过早优化的重要性,而是专注于干净的OO设计。我试图在重写使用大量长元素(几百万)的程序的上下文中协调这一原则。似乎使用ArrayList会消耗大约3倍于原始long数组的内存,而且浪费这么多RAM对我来说似乎是一个合理的担忧。这是基于我使用MemoryTestBench类describedhere所做的实验。.我的测试和输出如下:packagememory;importjava.util.ArrayList;importjava.util.List;publicclassArrayListExperiment{publicstaticvoidmain(String[

java - List<Double> 使用双 [] 的 RAM?

Java专家强调避免过早优化的重要性,而是专注于干净的OO设计。我试图在重写使用大量长元素(几百万)的程序的上下文中协调这一原则。似乎使用ArrayList会消耗大约3倍于原始long数组的内存,而且浪费这么多RAM对我来说似乎是一个合理的担忧。这是基于我使用MemoryTestBench类describedhere所做的实验。.我的测试和输出如下:packagememory;importjava.util.ArrayList;importjava.util.List;publicclassArrayListExperiment{publicstaticvoidmain(String[

java - 对 arrayList 中对象的 double 值进行排序

我正在尝试通过他们的双倍分数属性的值对我的自定义类染色体进行排序。这些染色体存储在一个ArrayList中。我知道我必须使用比较器,但在过去的一个小时里,我在网上阅读了很多不同的意见,以至于我完全糊涂了。附上我的代码,如果有人能指出我正确的方向,我将不胜感激。publicclassChromosome{publicGene[]genes;publicdoublescore;publicChromosome(intl){genes=newGene[l];}publicintgetLength(){returngenes.length;}publicvoidprintChromo(){fo

java - 对 arrayList 中对象的 double 值进行排序

我正在尝试通过他们的双倍分数属性的值对我的自定义类染色体进行排序。这些染色体存储在一个ArrayList中。我知道我必须使用比较器,但在过去的一个小时里,我在网上阅读了很多不同的意见,以至于我完全糊涂了。附上我的代码,如果有人能指出我正确的方向,我将不胜感激。publicclassChromosome{publicGene[]genes;publicdoublescore;publicChromosome(intl){genes=newGene[l];}publicintgetLength(){returngenes.length;}publicvoidprintChromo(){fo