我见过像0x00 0x0F这样的各种二进制数,但我从来没有见过像1x90这样的二进制数。让我们将二进制数演示为AxBC。A总是一样的。这没有什么不同。我找到了一个关于这方面的论坛,但他们说这是恒定的。http://www.avrfreaks.net/forum/0x00-0x01-0x02-nxnn我找不到任何答案,因为人们通常强调右边而不是左边。
我想知道它代表什么,我们为什么要使用它。如果它是一个常量,我们为什么要使用它?它只是一个标识符吗?
谢谢..。
发布于 2016-08-02 15:25:44
这只是一种约定,取决于您使用的是哪种编程语言。0x是用C系列语言、Python和其他语言编写的。例如,Visual Basic使用$作为前缀。
但还有更多的原因。在C/C++/C#/Python/许多其他语言中使用0来表示八进制数,一些语言使用b来表示纯二进制数(如在b1001001中)。
发布于 2016-08-02 15:27:01
这不是二进制文字,而是十六进制文字,它只是区分不同文字类型的一种方法。下面是Java JLS 3.10.1的摘录。其他语言也会使用类似的约定
IntegerLiteral:
    DecimalIntegerLiteral
    HexIntegerLiteral
    OctalIntegerLiteral
    BinaryIntegerLiteral 
...
HexNumeral:
    0 x HexDigits
    0 X HexDigits
HexDigits:
    HexDigit
    HexDigit HexDigitsAndUnderscoresopt HexDigit 
HexDigit: one of
    0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F
BinaryNumeral:
    0 b BinaryDigits 
    0 B BinaryDigits
BinaryDigits:
    BinaryDigit 
    BinaryDigit BinaryDigitsAndUnderscoresopt BinaryDigit
BinaryDigit: one of
    0 1 发布于 2016-08-02 15:23:04
0x仅仅是编程语言中用于区分普通数和十六进制数的约定。这里的0不代表任何东西。最有可能的是,1x90不是十六进制数,而是XY坐标之类的。
https://stackoverflow.com/questions/38714049
复制相似问题