Я пытаюсь арифметически сдвинуть бит двойного типа данных в C. Мне было интересно, если это правильный способ сделать это:
ПРИМЕЧАНИЕ: firdelay [] [] объявлен в main как 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;
}