我想知道是否有任何方法可以像float或double那样用简短的方式声明字节变量?我是说5f5d.当然我可以写byte x = 5,但如果你用var来表示局部变量,那就有点无关紧要了.

推荐答案

MSDN reference for ByteC# 4.0 Language Specification上都没有提到字面上的后缀.C#中唯一的文字后缀是整数和实数,如下所示:

u = uint
l = long
ul = ulong
f = float
m = decimal
d = double

如果要使用var,则始终可以将字节转换为var y = (byte) 5

虽然不太相关,但在C#7中,引入了一个新的二进制前缀0b,表示数字是二进制格式的.但仍然没有后缀使其成为字节,例如:

var b = 0b1010_1011_1100_1101_1110_1111; //int

.net相关问答推荐

从没有流的EventStore中读取流不存在异常

关于在 .NET 中干净地终止线程的问题

比较 C# 中的双精度值

为什么 ?: 会导致转换错误,而 if-else 不会?

C# 中 try/finally 的开销?

什么决定了 Path.GetTempPath() 的返回值?

读取方法的属性值

运算符重载 ==, !=, Equals

在 ToString() 之前判断 null

如何比较 C# 中的(目录)路径?

Dapper 是否支持 SQL 2008 表值参数?

加载程序集、查找类和调用 Run() 方法的正确方法

Iif 在 C# 中等效

在 .NET 中计算目录大小的最佳方法是什么?

Moq - 不可覆盖的成员不能用于设置/验证表达式

我应该如何删除 DbSet 中的所有元素?

从流中获取 TextReader?

obj 文件夹是为了什么而生成的?

C# ListView 列宽自动

序列化一个可为空的 int