unsigned int 数値 (2 バイト) があり、それを unsigned char 型に変換したいと考えています。私の検索から、ほとんどの人が次のことを推奨していることがわかります。
unsigned int x;
...
unsigned char ch = (unsigned char)x;
正しいアプローチですか?unsigned char は 1 バイトであり、2 バイトのデータから 1 バイトにキャストしたためです。
データの損失を防ぐために、unsigned char[] の配列を作成し、個々のバイトを配列に保存したいと考えています。私は次のことで立ち往生しています:
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] ??
}
また、unsigned char[2] を unsigned int に戻すにはどうすればよいでしょうか。
どうもありがとう。