在 C 中处理整数文字时,当数字以零开头时会出现某些行为。这些行为围绕所解释的数字的基数进行。
当整数文字以零开头时,它通常被解释为八进制数,也称为以 8 为基数。这意味着使用的数字是从 0 到 7。例如,07 相当于十进制值 7。
但是,当整数文字为 00x 时,它是被视为十六进制数,使用基数 16。它以前缀 0x 开头,并使用数字 0-9 和 A-F 来表示十进制值 0-15。
整数文字以 08 开头时会发生错误,因为这种组合在 C 中未定义。不存在八进制数字 8 这样的东西。
如果整数文字以多个零开头,则除了第一个零之外的所有前导零都将被忽略。例如,00016 被解释为八进制数 16,相当于十进制值 14。这是因为 016 代表八进制的 14。
因此,在您给出的示例中:
以上是C 中如何解释零前缀数字?的详细内容。更多信息请关注PHP中文网其他相关文章!