我正在尝试在C语言中进行双精度数据类型的算术位移。我想知道这是否是正确的方法:
注意:firdelay[][]在主函数中声明为 double firdelay[8][12]
void function1(double firdelay[][12]) {
int * shiftptr;
// Cast address of element of 2D matrix (type double) to integer pointer
*shiftptr = (int *) (&firdelay[0][5]);
// Dereference integer pointer and shift right by 12 bits
*shiftptr >>= 12;
}