Esta pregunta es básicamente la segunda mitad de mi otro Questionla conversión de un valor UINT16 en una matriz UINT8 [2]
¿Cómo puedo convertir un valor UINT16, en un UINT8 * matriz sin un bucle y evitar problemas endian.
Básicamente quiero hacer algo como esto:
UINT16 value = 0xAAFF;
UINT8 array[2] = value;
El resultado final de esto es para almacenar valor en una matriz UINT8 evitando al mismo tiempo la conversión endian.
UINT8 * mArray;
memcpy(&mArray[someOffset],&array,2);
Cuando hago simplemente establecimiento de memoria con el valor UINT16, convierte a little-endian que arruina la salida. Estoy tratando de evitar el uso de las funciones de conversión endian, pero creo que tal vez no tenga suerte.
Esto no funciona porque sigue siendo sensible a Endianness (básicamente, hace lo mismo que la 'memcpy' en la pregunta). –