.NET7中数值类型有哪些特点?
- 内容介绍
- 文章标签
- 相关推荐
本文共计773个文字,预计阅读时间需要4分钟。
在C语言中,可以通过以下方式打印在C语言中:
c#include
int main() { printf(在C语言中); return 0;}
在C#中,有int16,用short来定义;有int32,用int定义;用int64,用long来定义。在.NET7中,添加了int128,和unint128,位数更大的整型。
var i16 = short.MaxValue;
Console.WriteLine($"Int16(short):{i16}");
var i32 = int.MaxValue;
Console.WriteLine($"Int32(int):{i32}");
var i64 = long.MaxValue;
Console.WriteLine($"Int64(long):{i64}");
var i128 = Int128.MaxValue;
Console.WriteLine($"Int128(nint):{i128}");
运行结果如下:
这是四种整型的最大值,如下图,长度越来越长。我在想,如果想,是否有比这一个比这更长的呢?在C#中,还真有,那就是BigInterger类型。
做了一个实现,取Int128的最大值,加上1,看看BigInter的表现,发现是负值,不科学呀,这明显是越出范围了,再回头一想,可不是吗,=号左边是按Int128类型进行计算的,算完后的结果再赋值给BigInteger,肯定不正确。
本文共计773个文字,预计阅读时间需要4分钟。
在C语言中,可以通过以下方式打印在C语言中:
c#include
int main() { printf(在C语言中); return 0;}
在C#中,有int16,用short来定义;有int32,用int定义;用int64,用long来定义。在.NET7中,添加了int128,和unint128,位数更大的整型。
var i16 = short.MaxValue;
Console.WriteLine($"Int16(short):{i16}");
var i32 = int.MaxValue;
Console.WriteLine($"Int32(int):{i32}");
var i64 = long.MaxValue;
Console.WriteLine($"Int64(long):{i64}");
var i128 = Int128.MaxValue;
Console.WriteLine($"Int128(nint):{i128}");
运行结果如下:
这是四种整型的最大值,如下图,长度越来越长。我在想,如果想,是否有比这一个比这更长的呢?在C#中,还真有,那就是BigInterger类型。
做了一个实现,取Int128的最大值,加上1,看看BigInter的表现,发现是负值,不科学呀,这明显是越出范围了,再回头一想,可不是吗,=号左边是按Int128类型进行计算的,算完后的结果再赋值给BigInteger,肯定不正确。

