2012-10-12 34 views
1

好了,所以我有一個包含類似下面的信息枚舉類:INT 0801「超出範圍」

... 
_08_01(811, "08_01"), 
.... 

我想整型811改爲0801,以匹配枚舉,但​​是當我做,日食拋出一個錯誤說:

The literal 0801 of type int is out of range 

我找不出它超出範圍,因爲它絕對不是int範圍。任何人都可以幫助我理解爲什麼會被拋出?

謝謝!

+1

0之前會使數字解釋爲八進制數字。而8不是八進制數字 – nhahtdh

回答

4

從0開始一個數字是在八進制基,你不能在它使用數字「8」。

2

文字0801是八進制的(前面0表示)。這意味着8不允許在那裏。

1

整數以0開始被視爲八進制(未十進制)