【发布时间】:2010-08-05 04:46:23
【问题描述】:
我想写一个面试前的问题(对于java,但这并不重要),如果你看它而不是复制粘贴它并运行它会有不同的答案这样我们就可以检查人们是否真的手动解决问题。
为此,我试图找到一个 unicode 字符,它在屏幕上看起来与 ascii 字符相同(因此在我的问题的某个时刻,我可以有两个具有相同名称但具有 Integer/ 的方法int 参数)
我知道它可能具有颠覆性,但我希望它能提供一个额外的指标来验证其他答案。
注意:我尝试过土耳其语“i”——它似乎是 ascii——有 unicode 版本吗?
编辑/注意: 看起来我的意图被误解了......这些问题旨在手动完成,而不是由编译器完成。如果他们正在复制文本并进行编译,那么他们就是在绕过问题,这是为了让他们绊倒(或者更简单地给出错误的答案)。两者兼得的人要么弄明白,要么带着困惑来到真正的面试,我们可以帮助他们度过难关。
最后说明: :( 这看起来不太可能 - 大多数编辑器(在 Windows 上)将尝试保存在 cp1252 中(不知何故我的 1 文件保存为 UTF-8)在这种情况下,我认为没有任何字符可以在不提示某种保存错误的情况下工作
【问题讨论】:
-
这不是让候选人调试你用 Whitespace 编写的程序吗?必须有一种更具探索性和更少刺激性的方式来提取您所寻求的认知能力。
-
一个成功地超越了你的死亡陷阱的人应该得到一份密码学的工作,或者因为迂腐而不是编程的工作而获得奖励:P
-
我不认为 OP 的目标是欺骗人们。我认为这是确定谁通过代码思考,以及谁刚刚去运行它。被“欺骗”是正确的答案——这意味着你没有作弊。无论如何,谁会否决这样一个诚实的问题?
-
实际上,当您自己对 ASCII 和 ISO-8859-9 之间的区别感到模糊时,我想的越多,它似乎就给候选人一个基于此的问题。
-
“看起来”取决于字体,而不是 Unicode。 Unicode 会告诉您有某些代码点,并且有示例字形,但它没有标准字体。西里尔字母“C”(“S”音)看起来应该类似于 ASCII 字母“C”,但它们是否相同取决于单独的字体渲染。