私はいつも0
、たとえば—の代わりに、先行ゼロ()が8進数を表すために使用されるのか疑問に思っていまし0o
た。の使用は同じように役立ちますが、主要なes(JavaScriptなど)0o
ほど多くの問題を引き起こすことはありません。このデザインの選択の背後にある理由は何ですか?0
parseInt('08');
3142 次
3 に答える
21
すべての現代言語は、この規則をCからインポートし、Cからインポートし、Bからインポートし、BCPLからインポートしました。
#1234
8進数および16進数に使用されるBCPLを除く#x1234
。#はBの単項演算子(整数から浮動小数点への変換)であったため、Bはこの規則から逸脱しました。そのため、#1234は使用できず、ベースインジケーターとしての#は0に置き換えられました。
Bの設計者は、構文を非常にコンパクトにしようとしました。これが、2文字のプレフィックスを使用しなかった理由だと思います。
于 2012-07-14T11:24:10.183 に答える
1
「0b」は、8進数ではなく2進数によく使用されます。先行ゼロは、「O -ctal」だと思います。
8進数を解析することがわかっている場合は、を使用parseInt('08', 10);
して、数値を10進数として処理します。
于 2012-07-14T11:17:10.713 に答える