if(i++ & 1) {
}
Run Code Online (Sandbox Code Playgroud)
for
if(i % 2) {
}
Run Code Online (Sandbox Code Playgroud)
可以使用if在正常流量或条件语句类似操作for,if等提高性能,这将是for在可能的地方总是使用它们?
最近我遇到了这样一条线
public final static int DELETION_MASK = 0x01;
为什么不喜欢
public final static int DELETION_MASK = 1;
使用除0xA以外的第一种方法是否有任何优势,上限十六进制可以轻松转换?在这种情况下,它只是一个代表1的常量.
我正在尝试反转C中的位顺序(作业问题,主题:按位运算符)。我找到了这种解决方案,但对使用的十六进制值(0x01和0x80)感到有些困惑。
unsigned char reverse(unsigned char c) {
int shift;
unsigned char result = 0;
for (shift = 0; shift < CHAR_BITS; shift++) {
if (c & (0x01 << shift))
result |= (0x80 >> shift);
}
return result;
}
Run Code Online (Sandbox Code Playgroud)
我正在写的书并没有讨论这些价值,所以我真的不确定它们是什么。有人可以阐明这个解决方案吗?谢谢!