STM32中double類型轉化為unsigned char數組:
double占64位,char占8位,所以一個double需要8個char存儲:
double data = 3.1415926; double temp = 0.0; unsigned char buffer[8] = {0, 0}; memcpy(buffer, (unsigned char *)&data, 8); temp = *(double *)&buffer; printf("\r\n%lf\r\n", temp); printf("\r\n%lf\r\n", *(double *)&buffer);
STM32中double類型轉化為unsigned char數組