草庐IT

temp_double

全部标签

c# - 无法从 'double?' 转换为 'decimal'

我正在读取XML文件并解析信息。我正在尝试像这样将double转换为intvarpruebaPago=Math.Ceiling(row[i].Pagado);但是当我运行我的代码时,出现以下错误:cannotconvertfrom'double?'to'decimal'XML文件对Pagado的定义如下如何隐藏可空值并将其四舍五入为最接近的整数? 最佳答案 您需要使用Nullable.Value.您还需要检查该值是否不是null第一:if(row[i].Pagado.HasValue){varpruebaPago=Math.Ceil

c# - 具有最大字符数的 System.Double 值

我正在测试double[]数组的netxml序列化,所以我很想知道它被序列化的字符最多的double值是多少,这样我就可以测试最大输出大小是多少序列化数组。 最佳答案 应该是24。double.MinValue.ToString("R").Length来自double.ToString(string)or"R",whichreturns15digitsifthenumbercanberepresentedwiththatprecisionor17digitsifthenumbercanonlyberepresentedwithmax

XML 模式/验证 : different separator for datatype double

我将我的xsd文件中某些参数的数据类型从字符串更改为它们的真实类型,在本例中为double。现在我面临的问题是逗号在这里用作分隔符,而不是w3(http://www.w3.org/TR/xmlschema-2/#double)定义的点,导致反序列化期间出现错误(C#、VS2008)。我的问题:我可以使用w3模式进行验证但使用不同的分隔符来表示double值吗?谢谢你的帮助 最佳答案 如果您想继续使用XML架构简单类型,则不能这样做。decimal和从它派生的类型被锁定为使用句点。正如你所说:thespechere.如果要使用逗号作为

c++ - 为什么 printf 为非零 double 输出零?

我有一段代码:在WindowsMSVC2012下#include#includenamespacemyname{doublevar=42;}extern"C"double_ZN6myname3varE=10.0;intmain(){printf("%d\n",_ZN6myname3varE);return0;}输出为0。但我认为输出应该是10。你能帮忙解释一下为什么吗? 最佳答案 回答“但我想知道为什么输出0?这是怎么发生的?”。double是64位,int是32位。当double被截断为int时(因为使用了%d),只有前4字节存储

c++ - long double 的 printf,未知转换类型字符 L

我的程序很简单:#include#includeusingnamespacestd;intmain(){longdoublea=4.5;printf("%Lg",a);return0;}编译时,有一个警告:warning:unknownconversiontypecharacter'L'informat[-Wformat=]|控制台的输出是-1.28823e-231关于打印长double的文档非常清楚,它只是说明这种格式的正确参数是L。我做错了什么?我在Windows10下使用代码块、mingw32-g++编译器。P.S.:cout产生相同的输出。 最佳答案

Windows批处理命令问题,启动excel temp.xls

我想知道如果我这样做startexceltemp.xls操作系统将启动一个新的excel实例并在该实例中打开工作簿temp.xls,作为一个原子操作。我现在有的是startexcelstarttemp.xls通常这两个命令会弄乱我的其他excel实例,即在另一个已打开另一个工作簿的excel实例中打开temp.xls。谢谢, 最佳答案 虽然我认为“启动exceltemp.xls”将在start启动的Excel实例中打开temp.xls,但如果您使用"excel"[/]"temp.xls"有关选择,请参阅cliforexcel(为您的

java - 将 Double 从 Delphi/Pascal 转换为 Java

我需要使用Delphi/Pascal语言读取在WindowsSO中创建的二进制文件。我知道这个文件是固定长度的,前8个字节是双字节。我将此文件从WindowsSO复制到UbuntuSO。当我尝试使用Java语言在UbuntoSO内部读取此文件时,我看到:双=84000[0,0,0,0,0,-126,-12,64]所以我在Java中创建相同的double(84000),运行UbuntuSO:DoubleyourDouble=(double)84000;byte[]bytes=newbyte[8];java.nio.ByteBuffer.wrap(bytes).putDouble(your

c++ - C++ (Windows) 的 TEMP 环境变量扩展

我需要在Windows平台上获取一个%TEMP%环境变量值字符串。如果我尝试使用任何方法(C/C++)(getenv(),…)获取此环境变量,它会返回“~”字符串。例如:C:\DOCUME~1\pkp\LOCALS~1\Temp。但由于某些原因我需要获取完整的字符串,如下所示:C:\DocumentsandSettings\pkp\LocalSettings\Temp如果有人知道任何获得此方法的方法,请告诉我。 最佳答案 调用GetLongPathName()关于简称。 关于c++-C+

c++ - 将 int 类型转换为 double C++

我是编程新手,这可能是一个显而易见的问题,尽管我终生无法弄清楚为什么我的程序没有以double形式返回。我想编写一个股票程序,接收股票、价格的全部美元部分和小数部分。小数部分将作为两个int值输入,并包含一个具有3个int值的函数定义。该函数以double形式返回价格。#includeusingnamespacestd;intprice(int,int,int);intmain(){intdollars,numerator,denominator,price1,shares;charans;do{cout>dollars>>numerator>>denominator;cout>sha

c++ - double 商?

我在前几天的测验中遇到了以下问题。Considerthecodefragment(assumedtobeinaprograminwhichallvariablesarelegallydefined):intnum1,num2;doubleanswer;//programgetsnum1andnum2fromuser,andvaluesreceived//arealwaysnon-zerointsbetween-100and+100(codenotshown)...//computeprecisequotient:answer=(double)(num1/num2);Aftertheas