C - int sin signo a conversión de matriz de caracteres sin signo

Tengo un número int sin firmar (2 bytes) y quiero convertirlo en un tipo de char sin firmar. De mi búsqueda, encuentro que la mayoría de las personas recomiendan hacer lo siguiente:

<code> unsigned int x;
 ...
 unsigned char ch = (unsigned char)x;
</code>

¿Es el enfoque correcto? Lo pregunto porque el carácter sin signo es de 1 byte y pasamos de datos de 2 bytes a 1 byte.

Para evitar cualquier pérdida de datos, quiero crear una matriz de caracteres sin firmar [] y guardar los bytes individuales en la matriz. Estoy atascado en lo siguiente:

<code> unsigned char ch[2];
 unsigned int num = 272;

 for(i=0; i<2; i++){
      // how should the individual bytes from num be saved in ch[0] and ch[1] ??
 }
</code>

También,¿Cómo convertiríamos el char sin firmar [2] de nuevo a int sin firmar.

Muchas gracias.

Respuestas a la pregunta(6)

Su respuesta a la pregunta