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.