C - konwersja niepodpisanej int na tablicę bez znaku

Mam niepodpisany numer int (2 bajty) i chcę go przekonwertować na niepodpisany typ char. Z mojego wyszukiwania wynika, że ​​większość ludzi zaleca wykonanie następujących czynności:

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

Czy właściwe podejście? Pytam, ponieważ unsigned char ma 1 bajt i rzuciliśmy z 2 bajtów danych na 1 bajt.

Aby zapobiec utracie danych, chcę utworzyć tablicę unsigned char [] i zapisać poszczególne bajty w tablicy. Utknąłem w następujących sytuacjach:

<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>

Również,jak przekonwertowalibyśmy unsigned char [2] na unsigned int.

Wielkie dzięki.

questionAnswers(6)

yourAnswerToTheQuestion