この問題はプログラマー向けのものです。バイナリーデータとか構造体という言葉がわからない方には難しいと思いますよ!
あるゲームのプログラムを任されました。バグ調査のためにメモリーをチェックする羽目に。
定義されている構造体は以下のようになっていました。
typedef struct _item { int number; int count; } item_t; typedef struct _user { char *name; int status[8]; item_t item[3]; int flag; } user_t;
ユーザーデータのメモリ位置を突き止めたところ以下のようになっていました。
80 6c e0 cf 14 00 00 00 32 00 00 00 50 00 00 00 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 24 80 00 00 07 00 00 00 02 e0 15 20 04 00 00 00 02 00 00 80 13 44 77 fc c0 6c e0 cf 14 00 00 00 14 00 00 00 28 00 00 00
バグは「アイテムの数がマイナスを表示する。どのアイテムかはわからない」というもの。
さてマイナス表示されているアイテムのnumberは?
(リトルエンディアン、intとポインタは32ビット、アラインメントは行われないものとします。)