izh*_*hak 0 c++ optimization micro-optimization
假设我们有32位整数,8位字符,gcc编译器和英特尔架构:
什么是最快的方式(没有汇编程序使用)来提取,比如说,整数变量的第三个八位字节?例如,将它存储到char []的某个特定位置的char中?
小智 6
对于第3个八位字节(小端):
int i = 0xdeadbeef;
char c = (char) (i>>16); // c = 0xad
Run Code Online (Sandbox Code Playgroud)