C#decimal数据类型——有效长度问题

2022-11-29 17:04:09 浏览数 (1)

C#decimal整数部分有效长度

通过累计数字做数据容纳量测试:

从1累加到一百万亿测试:

//累计数据 //1 100=5050 //1 100000000000000(一百万亿) //(n 1)*n/2

代码语言:javascript复制
 //C#处理数据长度,最长29位
decimal n = decimal.Parse("100000000000000");//一百万亿
decimal one=decimal.Parse("1");
decimal two=decimal.Parse("2");
decimal v = (n   one) * n / two;
Console.WriteLine(v);
Console.WriteLine(v.ToString().Length);

从1累加到一千万亿测试:

代码语言:javascript复制
decimal n = decimal.Parse("1000000000000000");//一千万亿
decimal one=decimal.Parse("1");
decimal two=decimal.Parse("2");
decimal v = (n   one) * n / two;
Console.WriteLine(v);
Console.WriteLine(v.ToString().Length);

异常如下:

基础长度测试:

代码语言:javascript复制
//C#处理数据长度,最长29位
string len = "100000000000000000000000000000";
Console.WriteLine(decimal.Parse(len));
Console.WriteLine("最大长度:"  len.Length);

长度30的时候就会报错异常。

0 人点赞