如果要测试一个字节的第 N 位(对于正常的8位字节,N = 0..7),您可以使用:
if (byte & (1 << N))
...Nth bit is set...
Run Code Online (Sandbox Code Playgroud)
测试条件只检查表达式是0(假)还是非零(真).您可以通过以下方式明确说明:
if ((byte & (1 << N)) != 0)
...Nth bit is set...
Run Code Online (Sandbox Code Playgroud)
你可以设定该N 个具有位:
byte |= 1 << N;
Run Code Online (Sandbox Code Playgroud)
您可以重置(零)的N个次带位:
byte &= ~(1 << N);
Run Code Online (Sandbox Code Playgroud)
您可以翻转或切换的N个次带位:
byte ^= (1 << N);
Run Code Online (Sandbox Code Playgroud)
虽然我已经使用了byte整个名称,但只要您的班次在正确的范围内,您就可以使用任何整数类型的任何位.
| 归档时间: |
|
| 查看次数: |
1111 次 |
| 最近记录: |