C十六进制表示法和按位运算符性能
作者:互联网
可能是一个愚蠢的问题,但我有一个C应用程序,我经常这样做:
x & 0xff
其中x是32位整数.将前导零也放入是否有任何性能优势,所以它是两个32位数之间的AND运算?
x & 0x000000ff
我读到在评估操作之前,任何小于int的操作数都将被提升为int.我想这是一个优化编译器自动完成的,或者我是否通过将那些前导零置于那里来帮助MSVC?
解决方法:
将这些零添加到源代码中绝对没有区别.在编译器完成解析代码之前,它们已在lexing阶段被删除.它们不会影响代码生成.
标签:c,optimization,bitwise-operators 来源: https://codeday.me/bug/20190727/1557298.html