StackOverflow的404错误页

StackOverflow的404错误页

不知道大家有没有注意到StakeOverflow的404错误页面?其显示了下面的这个图片:

这个是一个很有意思的图片,不知道你看懂了吗?看上去像Python,又像 Ruby,还像 Perl,当然也有 C的影子,还有Brainfuck。是的,这是一个杂交程序,杂交了Python,Ruby,Perl,C,还有Brainfuck(注意其中的#号),所有的语句都是输出“404”字符串。

关于这种杂交程序,本站以前也发布过《C语言和sh脚本的杂交代码》,大家可以前往一看。这样的有趣的玩法叫“Polyglot”,也就是说,把N种语言写在一个文件中,然后,该文件在任何编译器下都可以运行,上述的那段代码在Python,Ruby,Perl,Brainfuck下都可以正常运行,也可以被C和的编译器编译通过,并被运行。

下面是这个图片的字符码,以供各位试试。

# define v putchar
#   define print(x) main(){v(4+v(v(52)-4));return 0;}/*
#>+++++++4+[>++++++<-]>++++.----.++++.*/
print(202*2);exit();
#define/*>.@*/exit()

欢迎你留下你的看法。

(全文完)

(转载本站文章请注明作者和出处 酷 壳 – CoolShell ,请勿用于任何商业用途)

好烂啊有点差凑合看看还不错很精彩 (16 人打了分,平均分: 4.13 )
Loading...

StackOverflow的404错误页》的相关评论

  1. 这个是不是传说中的“跨语言”
    所有代码都做到这个境界,就真的是“编程不受语言限制”了

  2. 确实写的挺妞, 不过加上颜色之后, 在python和perl里面除了第4行,其它的都是注释。
    没看懂在C语言版本中这句#define/*>.@*/exit()怎么理解? 请教老大们, 谢谢。

  3. 汗 跨平台的代码看着好乱啊 c语言预处理后是这样的
    main(){putchar(4+putchar(putchar(52)-4));return 0;};exit();

    #define/*>.@*/exit()这行预处理后消失了

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注