整数を16進数に直接変換することはできますか?ヘキサ10進文字列形式
Integer Value = 145635
hexa decimal value (4 bytes) = 0x000238E3
<0x00><0x02><0x38><0xE3>
私は%xで試しました。しかし、それは私のためには機能しません。
誰でもこの問題について私を助けることができますか?
整数を16進数に直接変換することはできますか?ヘキサ10進文字列形式
Integer Value = 145635
hexa decimal value (4 bytes) = 0x000238E3
<0x00><0x02><0x38><0xE3>
私は%xで試しました。しかし、それは私のためには機能しません。
誰でもこの問題について私を助けることができますか?
各バイトを囲む<..>
の出力は、少なくとも次のように1つのprintf
文で出力することができます。ヘクスとビットシフト演算子と一緒に優れている、そのデータ・タイプが符号なしであることに注意してください:
unsigned int val = 145635;
// "ordinary" printf
printf("%08X\n", val);
// printf per byte:
printf("<%02X><%02X><%02X><%02X>\n",
val >> 24,
(val&0x00ff0000) >> 16,
(val&0x0000ff00) >> 8,
val&0x000000ff);
'%02x' ---->'%02X'は望ましい出力を達成するために – LPs
@LPs:ありがとう、ありがとう。 –
プラス1つですが、OPが実際に望んでいるものかどうかはわかりません。 –
[MCVE(http://stackoverflow.com/help/mcve)、期待と実際の出力を入力してくださいこれはあなたの問題を示しています。また、正確には「16進数に変換する」という意味ですか? 'int'を整数を16進数で保持する文字列に変換しますか? – yeputons
"しかし、それは私を助けません。*"なぜ? – alk