C++中这个是什么意思switch((c1<<2)+(c2<<1)+c3)帮忙解释一下

日期:2022-04-12 06:53:57 人气:1

C++中这个是什么意思switch((c1<<2)+(c2<<1)+c3)帮忙解释一下

c1<<2 是位运算,对c1变量左移两位,相当于乘以4,但比乘法运算快得多。
c2<<1 对c2变量左移两位,相当于乘以2
总的就是4*c1+2*c2+c3 然后switch语句对这个表达式结果进行处理。
c1,c2,c3的值为0或1,用4*c1+2*c2+c3表达式相当于把c1c2c3二进制数转为十进制数。
    A+
热门评论