-1 的 C# 7 二进制文字

标签 c# .net c#-7.0

我想使用新的二进制文字功能声明 -1 文字:

int x = 0b1111_1111_1111_1111_1111_1111_1111_1111;
Console.WriteLine(x);

但是,这不起作用,因为 C# 将其视为 uint 文字,我们得到 Cannot implicitly convert type 'uint' to 'int'... 这对我来说有点奇怪,因为我们处理的是二进制数据。

有没有办法在 C# 中使用二进制文字声明 -1 整数值?

最佳答案

在尝试了一些案例之后,我终于找到了这个

int x = -0b000_0000_0000_0000_0000_0000_0000_0001;
Console.WriteLine(x);

结果打印为 -1。

如果我理解的一切都是正确的,他们会为 -/+ 使用 sing 标志,所以当你输入 32 1 时,你会进入 uint

关于-1 的 C# 7 二进制文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43852539/

相关文章:

C# 7 模式匹配与元组

c# - 如何在 EditText 软键盘上隐藏 Windows 8 Metro 应用程序?

.net - 使用 WebDAV 访问 Exchange 2003 收件箱

.net - 在CF.NET 2.0中播放WMA文件

c# - Entity Framework - 使用添加/修改的子实体和孙实体更新实体

asp.net - C# 7.0 值元组编译错误?

c# - SQL 语法错误 C#

c# - EF : Is it OK to use default value for the created date property?

c# - Unity C# : Issue with rotating, 现在面对错误的方向

c# - 使用 "is"关键字和 "null"关键字 c# 7.0