私はC++で作業しており、#define VAL 0x00000400
. 定義に等しい変数を設定すると: int value = VAL; デバッガーを実行すると、変数値 = 1024 が表示されます。それがどのように 1024 になるか説明してもらえますか? おそらく、メモリアドレス情報、#define 情報、または関連する何かへのリンクです。
4183 次
7 に答える
11
0x00000400 は 1024 の底 16 です。デバッガーは底 10 の整数値を表示しています。
于 2010-09-07T22:24:27.860 に答える
8
"0x400" は16 進数、または基数 16 です。10 進数 (基数 10) で表される 0x400 は 1024 です。
ところで、Google を使用して基数変換を行うことができます。「10 進数で 0x400」を検索すると、Google で答えが表示されます。
于 2010-09-07T22:25:42.427 に答える
3
さらに、0x400(基数16)から基数10への変換は次のとおりです。
4*16^2 + 0*16^1 + 0*16^0
4*16^2 + 0 + 0
4*256
1024
于 2010-09-08T01:22:02.217 に答える
3
0x00000400 は 400 ベース 16 で、これは 1024 ベース 10 です。
于 2010-09-07T22:24:53.377 に答える
3
10 進数で 1024 = 16 進数で 400。
于 2010-09-07T22:25:27.230 に答える
3
0x400
は 16 進数です (0x
プレフィックスで示されます)。これは、10 進数を表す別の方法です1024
。
于 2010-09-07T22:25:28.297 に答える
0
まあ、私はあなたのコードを見たことはありませんが、400h = 1024 10進数で、整数 ' int value = VAL ' を指定すると、コンパイラは通知/警告を表示せず、キャストを行います
于 2010-09-07T22:26:59.073 に答える