因此,首先我阅读了以下内容:http://www.hpc.unimelb.edu.au/nec/g1af02e/chap1.html http://www.hpc.unimelb.edu.au/nec/g1af02e/chap1.html它告诉我以下内容:
K&R C 和 SUPER-UX K&R C
允许使用数字 8 和 9。它们被视为十进制整数常量。
我有点困惑...寻找更多...发现了这个:http://docs.oracle.com/cd/E19205-01/819-5265/bjbfb/index.html http://docs.oracle.com/cd/E19205-01/819-5265/bjbfb/index.html
它告诉我这一点:
接受八进制转义序列中的 8 或 9。
但是,根据:http://en.wikipedia.org/wiki/Octal http://en.wikipedia.org/wiki/Octal
八进制数字系统(简称 oct)是以 8 为基数的数字系统,使用数字 0 到 7。
现在我真的很困惑。我从来没有机会真正使用 K&R C 编译器...那么为什么 K&R C 接受 8 和 9 作为八进制数字...这是如何处理的?它们在“真正的”八进制系统中的价值是什么?
K&R C 不是很严格,因此 ANSI-C(和更新的)编译器不允许的很多事情都是允许的。
“八进制”数0193
相当于1*8^2 + 9*8^1 + 3
。令人憎恶吗?是的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)