C# 数值数据类型命名

标签 c# naming-conventions types

查看 C# 数字数据类型,我注意到大多数类型都有带符号和不带符号的版本。我注意到虽然“默认”整数、short 和 long 是有符号的,但它们的无符号对应物是 uint、ushort 和 ulong; “默认”字节是无符号的 - 并且在 sbyte 中有一个带符号的对应部分。

只是出于好奇,为什么 byte 与其他的如此不同?这背后是否有特定原因或“事情就是这样”?

希望问题不会因为我的措辞和过度使用引号而变得太困惑。呵呵..

最佳答案

我会说字节不被视为数字类型,而是定义了一个大小为 8 位的结构。除了没有符号字节的概念,它是无符号的。另一方面,数字首先被认为是有符号的,因此声明它们是无符号的,这是不常见的保证前缀

[编辑] 忘记了有符号字节 (sbyte)。我想这是相当历史和实际的应用。 Ints 比 UInts 更常见,byte 比 sbyte 更常见。

关于C# 数值数据类型命名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3615042/

相关文章:

c# - 将 BigInteger 二进制转换为 BigInteger 数字?

c# - CloudConfigurationManager.GetSetting 在单元测试中返回 Null

c# - 了解 Blazor 中的覆盖参数问题

utf-8 - 为什么非 ASCII 字符在函数/变量名称中仍然不受欢迎?

naming-conventions - 当程序执行对数据进行更改的 Action 时,您称之为什么?

scala - Scala 常量的命名约定?

c# - 来自不同线程的触发事件

c++ - short(expression) 是什么意思?

mysql - MySQL 5.0 和 5.1 之间 @-parameters 的不同结果类型

haskell - 需要一个类型,但 ‘Num a’ 的类型为 ‘GHC.Prim.Constraint’