[英]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.