发布网友 发布时间:2022-04-25 23:03
共4个回答
热心网友 时间:2023-05-04 06:15
这是由于运算符的优先级造成的,为了便于理解,通常可加括号显式表现优先关系,在这里
b=~a>>4 1
相当于
b=~(a>>(4 1))
注:因为手机知道bug,"加号"可能无法显示追问你这样就把,,本来的优先级顺序都改变了啊
追答可以改变,但没有改变,例如
2+3*4=2+(3*4)
这么多是为了更加明白的表现其优先关系,增加可读性
热心网友 时间:2023-05-04 06:15
运算具有优先级~~~追问能具体的解释一下嘛,,,,理论上我不管怎么推都应该是2,,,看生成的汇编代码,又看不懂~~求解释
追答char是字符串,把char改成int 在运行一下~~~
热心网友 时间:2023-05-04 06:16
这牵扯到操作符优先级的问题,移位运算在算术运算后面,所以先执行4+1=5,然后再移位,再取反。追问是啊,,在这里面取反~的优先级最高,其次是算术运算符,再才是移位。。。。。
热心网友 时间:2023-05-04 06:17
这里比较的是ASCII码,
在计算机里一切的内容都是0和1,
所以一切东西都是用数字来表示的,
比如内码0表示字符串结束,13表示回车,A是65,a是97
具体看这个表格:
http://www.weste.net/tools/ascii.asp