首页 > 编程 > C++ > 正文

在C++ 中,0是八进制?

2020-02-24 14:36:52
字体:
来源:转载
供稿:网友

虽然在任何进制数种, 0只有一个值——那就是「零」,不过话说回来,0是八进制数吗?C++规范如何定义的?下面我们来进一步的了解下,以免之后有人再谈到会有争议。

最近和朋友们讨论关于数的话题,他说,八进制数现在几乎从未使用过。 我一时无法反驳,确实,除了我们经常使用的十进制,在计算机中用的最多的就是二进制和十六进制了,八进制数确实很“小众”。

等我回到家仔细一琢磨,八进制,八进制,「八进制就是以 0 开头的数字」,咦,那 0 算吗?0 也是以 0 开头的数字啊!如果 0 是八进制的话,那么我们几乎每天都在使用八进制数。 计算机中确实有很多东西值得深究。

那么 0 是八进制数吗?C++ 规范如何定义的?

是的,在 C++ 中,0 是 八进制 的。

根据 C++ 标准:

2.14.2 整数 [lex.icon]

integer-literal: 
    decimal-literal integer-suffixopt 
    octal-literal integer-suffixopt 
    hexadecimal-literal integer-suffixopt 
decimal-literal: 
    nonzero-digit 
    decimal-literal digit 
octal-literal: 
    0                   
    octal-literal octal-digit

以后我们设置可以自豪的说,“在计算机中,八进制比二进制,甚至十六进制更普遍”,更多关于C++ 的内容请继续关注武林技术频道。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表