<<是位运算符,这个移位运算是针对二进制的。
以单字节为例,比如0x55=0b01010101
如果将该数值左移1位,就变成了 0b10101010(最右边这个0是移空了以后补的),这个数值是0xaa
从数学上看,左移1位等于乘以2,右移1位等于除以2,然后再取整,移位溢出的丢弃。
以你的这个枚举型数据结构为例:
1<<1可以看做是1*2,结果为2。1<<2可以看做是1*2的2次方,结果为4。1<<3可以看做是1*2的3次方,结果为8。
那么就是将这个枚举数据结构内的3个变量依次赋值为2,4,8。加括号的意思是因为有运算优先级的关系。先算出右边的结果然后赋值给左边。
不知道提问的朋友明白没有。
本文地址: http://www.goggeous.com/h/1/1166006
文章来源:天狐定制
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
2025-01-08职业培训
2025-01-08职业培训
2025-01-08职业培训
2025-01-08职业培训
2025-01-08职业培训
2025-01-08职业培训
2025-01-08职业培训
2025-01-08职业培训
2025-01-08职业培训
2025-01-08职业培训
2025-01-03 12:46:18职业培训
2025-01-03 12:46:17职业培训
2025-01-03 12:46:16职业培训
2025-01-03 12:46:16职业培训
2025-01-03 12:46:15职业培训
2025-01-03 12:46:15职业培训
2025-01-03 12:46:14职业培训
2025-01-03 12:46:05职业培训
2025-01-03 12:46:04职业培训
2025-01-03 12:46:03职业培训
2024-12-21 16:55职业培训
2024-12-05 14:51职业培训
2024-12-16 23:58职业培训
2025-01-02 08:21职业培训
2024-12-21 19:11职业培训
2024-12-14 23:19职业培训
2024-12-21 17:40职业培训
2024-12-17 06:45职业培训
2025-01-03 11:35职业培训
2025-01-01 08:39职业培训
扫码二维码
获取最新动态