>>626
やろうとしている事はわかるが、まずやり方が間違っている。
正しくは、プログラムBの3行目を
*b = (int*)0x00000010;
とするべき。
そして変数のアドレスは不定ですが、得られない事もない。
自動変数の場合はスタックの開始位置を、グローバル変数の場合は決まった
オフセット値を得られれば、取得する事もできる。一応。
その情報は、実行プログラムの先頭部分に書かれている。オンメモリから
調べるべきではない。
そしてメモリ保護されているOS上で、同時に実行している別プログラムに
割り当てられたメモリを読む事はまず不可能。どうしても行う必要があるのなら、
CPUの状態を最上位権限に変更し、割り込みを一時的に停止させる必要がある。
現在動いていないプログラムの変数を読む事は、全く不可能ではないが
得られた値の信憑性はかなり低い。なぜなら、そのプログラムを終了させる時に
その変数の内容が破壊されている可能性が高いからである。