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.