为了账号安全,请及时绑定邮箱和手机立即绑定

从零开始的数字有什么特别之处?

从零开始的数字有什么特别之处?

C++ C
交互式爱情 2019-10-22 22:09:33
这是一个愚蠢的问题,但对我来说很有趣)这就是我通过Visual Studio 2013获得的东西int i = 07;     // i == 7int i = 16;     // i == 16int i = 00016;  // i == 14, why?int i = 05016;  // i == 2574, wow )int i = 08;     // compile error, compiler expects octal number...如果number以0开头并包含8,则为编译错误。这正常吗?如果00016 == 14,那么编译器到底从零开始到底做了什么?谢谢大家 ))
查看完整描述

3 回答

?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

以8开头的整数文字0是一个八进制数,就像以1开头的数字0x是十六进制数一样。


八进制数只能包含数字0来7,这就是为什么你会得到一个编译错误。


查看完整回答
反对 回复 2019-10-22
?
慕村225694

TA贡献1880条经验 获得超4个赞

开头的整数文字0是八进制文字。因此,它们只能包含数字0-7。


(有趣的是,这包括文字0本身。)


查看完整回答
反对 回复 2019-10-22
  • 3 回答
  • 0 关注
  • 572 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信