16

我已经看到这char被定义为 char ch = '\117'

有什么样的表现形式'\117'

例如,我知道escaped-sequenceis或is ,一个十六进制数字在哪里,但我这辈子从未见过这样的事情!令人惊讶的是,它确实编译!(输出是)'\n'unicode`\udddd'd'\117'O

4

4 回答 4

11

这是 ascii 的八进制表示。你可以在这里看到更多的价值:http: //donsnotes.com/tech/charsets/ascii.html

于 2013-02-19T05:43:17.983 回答
8

它是八进制的,是 C/C++ 的保留。

于 2013-02-19T05:42:10.080 回答
3

那是因为它是大写O字符的八进制表示。

如果你尝试打印你的char ch='\117';,你会看到它打印出来O

于 2013-02-19T05:42:21.470 回答
2

这是字符“O”的八进制值,当我执行 system.out.println(..) 时,我得到了以下输出:

char ch = '\117';
System.out.println("Char is: " + ch);

输出:

Char is : O
于 2013-02-19T05:42:42.570 回答