我一直想知道为什么要使用前导零(0
)来表示八进制数,而不是像0o
这样的形式。使用0o
同样有用,但不会像前导的0
那样引起一些问题 (例如在 JavaScript 中写 parseInt('08');
)。这种设计选型背后的原因是什么?
我一直想知道为什么要使用前导零(0
)来表示八进制数,而不是像0o
这样的形式。使用0o
同样有用,但不会像前导的0
那样引起一些问题 (例如在 JavaScript 中写 parseInt('08');
)。这种设计选型背后的原因是什么?
#1234
表示八进制,#x1234
表示十六进制。因为在B语言中#是一个一元操作符(将整数转换为浮点数),所以不能使用#1234,于是将#作为基数指示器替换为0,B语言便与此约定不同。https://www.python.org/dev/peps/pep-3127/#removal-of-old-octal-syntax
parseInt('08', 10);
将其视为十进制数进行处理。
0b
修正为0o
。 - Hauleth