正如标题所说,我对所<<=代表的内容感到有些困惑.我知道<<是一个班次操作员,但这是我第一次看到=它.有任何澄清吗?
示例代码:
#include <stdio.h>
main() {
unsigned int i, s;
for( s = i = 0; i <= 7; i++){
switch (i%3) {
case 0: i++;
case 1: i <<= (7 & (i + 1)) | ((i + 2) & 6); s += i; break;
case 2: i += (i ^ i) | 1 ; continue;
}
s++;
}
printf("%d\n", s);
}
Run Code Online (Sandbox Code Playgroud)
AFAIK >>=是"相同"的操作.你可以打电话
i = i << 4;
Run Code Online (Sandbox Code Playgroud)
要么
i <<= 4;
Run Code Online (Sandbox Code Playgroud)
它具有相同的效果.
就像i = i + 5;和i += 5;