struct st_task
{
uint16_t id;
uint32_t value;
uint64_t timestamp;
};
void fool()
{
st_task task = {};
uint64_t a = 0x00010001;
memcpy(&task, &a, sizeof(uint64_t));
printf("%11u,%11u,%11u", task.id, task.value, task.timestamp);
}
复制结构体时,从低位到高位,所以对于task的划分,很明了了