Tag: 类型

将double值转换为二进制值

如何将double值转换为二进制值。 我有一些像这样的价值125252525235558554452221545332224587265我想将其转换为二进制格式。所以我保持双倍然后尝试转换为二进制(1和0)..我正在使用C#.net

C#中的15位数的Double Type精度是不是?

我正在测试Brainteasers的代码: double d1 = 1.000001; double d2 = 0.000001; Console.WriteLine((d1 – d2) == 1.0); 结果是“假的”。 当我更改数据类型时: decimal d1 = 1.000001M; decimal d2 = 0.000001M; decimal d3 = d1-d2; Console.WriteLine(d3 == 1); 该程序写出正确的答案:“真”。 此问题仅在浮点后使用6位数。 15位数的精度怎么样?

T-SQL(varchar(max)vs CLR(string,SqlString,SqlChars)?

我有一个问题,我无法解决。 我正在使用SQL Server 2005,C#CLR来使用外部dll。 问题在于参数的长度。 我需要使用函数参数类型varchar(max) 。 如果在C#代码中我使用string , SqlSring ,我不能使用T-SQL类型varchar(max) ,只能使用nvarchar(4000) varchar(4000) nvarchar(4000) 。 我需要说的是,当我需要使用超过4000个符号时,可能会出现这种情况,所以我需要知道,我需要使用哪种C#类型的varchar(max) 。 我已经阅读了很多文章,其中有几篇说,为此我可以使用SqlChars 。 但! 我有字符串操作。 如何使用string或SqlString进行操作然后转换为SqlChars ? (可能是SqlChars.ToString()或SqlChars.ToSqlString() )。 我没有找到任何C#代码。

有什么理由在C#中使用byte / short等..

在int类型? 很多代码使用int和double / float。 我知道有一些像.NET移动版本这样的字节/短片是自己的,但对于桌面应用程序有什么意义吗? 当我做C ++工作(游戏编程)时,我非常清楚我使用的每种数据类型,尽管我在C#/ Java工作中没有这种感觉。 如果我知道我的循环永远不会越过字节的边界,那么使用一个字节会不会有任何好处?

C#中值类型BigInteger的限制是多少?

如MSDN中所描述的BigInteger是: 表示任意大整数的不可变类型,其理论上的值没有上限或下限。 我可以看到BigInteger是一个ValueType ,据我所知,ValueType的最大大小必须为16个字节 。 MSDN进一步说: 对于导致BigInteger值过大的任何操作,都可以抛出OutOfMemoryException。 和更多 : 尽管此过程对调用者是透明的,但它确实会导致性能下降。 在某些情况下,尤其是在非常大的BigInteger值的循环中执行重复操作时 它怎么能存储像double.MaxValue + double.MaxValue这样的大值double.MaxValue + double.MaxValue ? 我被告知它里面有ReferenceType obejects,但我在VisualStudio中定义的所有内容都是ValueTypes。 它的真正限制是什么? 即使没有,它如何“作为一种价值类型”设法存储所有数据量?

通用Type参数没有装箱或类型参数转换

我有以下帮助方法: public static T CreateRequest() where T : Request, new() { T request = new T(); // … // Assign default values, etc. // … return request; } 我想从另一个帮助器中的另一个方法内部使用此方法: public T Map(F value, T toValue) where T : new() where F : new() { if (typeof(T).BaseType.FullName == “MyNamespace.Request”) { toValue = MyExtensions.CreateRequest(); } else { […]

类和数据类型有什么区别?

我听到以下声明: 我们可以说class是数据类型或数据类型是一种类。 任何人都可以向我解释这究竟是什么意思?

哪些值类型存储在(C#)通用集合中

确实,generics集合比值非类型的非generics集合表现更好。 (即List与ArrayList)。 但除了拳击拆箱步骤之外,为什么呢? 一旦添加到集合中,值类型对象存储在哪里? 在非generics集合中,它们将被装箱并存储在堆上,generics中有什么不同?

c#如何定义包含不同类型的字典?

如果有以下代码。 你在哪里看到XXX我想放入long []类型的数组。 我该怎么做?如何从字典中获取值? 我只是使用defaultAmbience [“CountryId”] [0]来获取第一个元素吗? public static Dictionary defaultAmbience = new Dictionary { { “UserId”, “99999” }, { “CountryId”, XXX }, { “NameDefaultText”, “nametext” }, { “NameCulture”, “it-IT” }, { “NameText”, “namelangtext” }, { “DescriptionDefaultText”, “desctext” }, { “DescriptionCulture”, “it-IT” }, { “DescriptionText”, “desclangtext” }, { “CheckInUsed”, “” } };

将“C#friendly type”转换为实际类型:“int”=> typeof(int)

我希望得到一个System.Type给定一个string ,该string指定(原始)类型的C#友好名称 ,基本上就像C#编译器在读取C#源代码时所做的那样。 我觉得描述我所追求的是以unit testingforms出现的最佳方式。 我希望存在一种通用技术可以使所有下面的断言通过,而不是试图对特殊C#名称的特殊情况进行硬编码。 Type GetFriendlyType(string typeName){ …??… } void Test(){ // using fluent assertions GetFriendlyType( “bool” ).Should().Be( typeof(bool) ); GetFriendlyType( “int” ).Should().Be( typeof(int) ); // ok, technically not a primitive type… (rolls eyes) GetFriendlyType( “string” ).Should().Be( typeof(string) ); // fine, I give up! // I want all C# type-aliases to work, not […]