私はchar変数を持っていますが、最も重要でない2つの16進値にのみ関心があります。他の値をすべて失うにはどうすればよいですか?例:
char input = 0xFFFFFFD1;
が欲しいです:
output = 0xD1;
私は試した:
output = (input&0x000000FF);
しかし、私が得るよりも:
output = 0xFFFFFFD1
この課題を解決するにはどうすればよいですか?
char
プラットフォームでは8ビットである可能性が非常に高いです。その場合、これは:
char input = 0xFFFFFFD1;
これと同じです:
char input = 0xD1;
output
また、それはタイプであると想定していint
ます。その場合、これが必要です:
int output = (unsigned char)input & 0xFF;
デモ: http: //ideone.com/FOdRG。
[これが問題ではない場合は、使用している実際のコードを含めるように質問を更新する必要があります。]