8進数リテラルはプログラミング言語ごとに異なる

8進数を表記する文法は、主に以下の3つがあります。 (二番目と三番目は分かりにくいですが ゼロ オー1 です)

これらのうち、各プログラミング言語がどの文法を採用しているかを表にまとめました。

言語 0 0o 0O
C × ×
PHP × ×
Perl × ×
Java × ×
Scala (~2.9) × ×
Scala (2.10~) × × ×
Kotlin × × ×
C# × × ×
Rust × ×
Swift × ×
Go
Ruby
Python2
Python3 ×
JavaScript1

考察

「8進数は 0123 って書くんだよ」というのは、もはや古いのかもしれません。


  1. ただし、0 のあとに 8 か 9 を含むなら10進数。参考:字句文法 - JavaScript | MDN

  2. octet (8個組) の o