0

VC++ 9 では、そのようなことを試みています:

int base = 0010;

次に、デバッガーで、10進数で8に等しいことがわかります。理解できない。

数値の前に000を明示的に使用すると、VC++はバイナリ形式の数値として解釈すると思いました。

2 進数の 0010 は 10 進数の 2 です (いつものように基数を右から左に読みます)。

0 -> 0

0 -> 1

10 -> 2

では、なぜそのような定義の後、VC++ は 0010 が 10 進数で 8 であると表示するのでしょうか?

10 進数の 8 がビンの 1000 に等しい場合は?

4

1 に答える 1

1

0010 は 8 進リテラルです (0 で始まるため)。8 進数で 10 は 10 進数で 8 です

于 2012-12-24T13:15:10.437 に答える