零永远是零,所以没关系。但是在最近一次与 friend 的讨论中,他说八进制立即数今天几乎没有使用。†然后我发现实际上我的代码中几乎所有整数常量都是八进制的,即0
0是根据C++语法的八进制文字吗?标准怎么说?

†我知道的唯一真正用途是用于UNIX文件权限。

最佳答案

是的,0是C++中的八进制文字

根据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                           <--------------------<Here>
    octal-literal octal-digit

关于c++ - 0是十进制文字还是八进制文字?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6895522/

10-11 02:23