C言語初心者のショコレです。
使っているのはVisual C++です。
学校の宿題で、[2004]の4バイトの値をバイナリコードを使って
2バイトで表すには?っていう問題に悩んでいるんですけど
インターネットでバイナリコードを調べてもなんだか具体的なイメージが
つかめない状態です。
すごくわかりにくい質問だとは思うんですけど、
どなたかよろしくお願いします。
よく分からないまま、質問してしまっていたみたいで。
質問の内容が正しくありませんでした。
いま通信を勉強しているんですけど、TCP/IPを使って
0x07D4 という数値をrecv()を使ってchar型で受信した場合、どういう風に変換を行えば
2004(10進)の数値として扱えるのかが思いつかなくて。
この書き込みもなんだかよく分からないものになっていますけど。
また考え直してみます。
ありがとうございました。
> 0x07D4 という数値をrecv()を使ってchar型で受信した場合、どういう風に変換を行えば
> 2004(10進)の数値として扱えるのかが思いつかなくて。
ビックエンディアンなのか、リトルエンディアンなのか不明ですが…
0x07d4=2004では?
とりあえずchar型だと、0x07 0xd4で受信しているでしょうから、
エンディアンを合わせた上で16bitの整数型として扱えばよろしいかと。
htons()とかその辺りが使えそうな気がしないでもない…かな。
# http://www.mtakahashi.com/cgi.cgi?12538
瀬戸っぷさん、ありがとうございました。
よく分からないまま、質問を上げてしまって。
ご迷惑おかけしました。