繁体   English   中英

在 C# 中将字节转换为布尔值

[英]Convert byte to bool in C#

我正在尝试基于 arduino 库( http://blog.electrodragon.com/rc522-write-a-card-demo-code/ )在 c# 上创建一个库来实现物联网核心,但我不明白什么是:

if (!(temp & 0x03))

或者

while ((i!=0) && !(n&0x01) && !(n&waitIRq))

它是必需的布尔值,但那些是字节! 我怎么能转换这个?

如果有人知道已经制作的图书馆,请告诉我。 谢谢你。

在 C 中,任何非零表达式都隐式为真,零为假。 在 C# 中,您需要进行显式比较:

if ((temp & 0x03) == 0)

while ((i!=0) && (n&0x01)==0 && (n&waitIRq)==0)

或者,您可以使用.NET 的布尔结构

bool isTempAppropriate = (temp & 0x03) == 0;
if(isTempAppropriate) { ... }

请注意, bool只是System.Boolean语法糖,您可以使用var关键字而不是bool

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM