如何正确地将 4 个字节转换为一个无符号长变量?
我正在 MPLAB C18 上编程 PIC18,这是我的代码。
unsigned long theseconds = 0x00;
BYTE timeToSave[4];
timeToSave[0] = 0xFF;
timeToSave[1] = 0xFF;
timeToSave[2] = 0x01;
timeToSave[3] = 0x01;
theseconds = timeToSave[0] & 0xFF;
theseconds |= (timeToSave[1] << 8) & 0xFFFF;
theseconds |= (timeToSave[2] << 16) & 0xFFFFFF;
theseconds |= (timeToSave[3] << 24) & 0xFFFFFFFF;
printf("\r\nSeconds:%lu",theseconds);
这是我不断得到的输出, 秒:255
谢谢!