一段很生草的代码

#include <iostream>

#define def int
#define main() main() {_
#define print(x) std::wcout << (x) << std::endl; return 0;}

def main():
    print("Hello, World!")

你觉得它是Python还是CPP

15 个赞

盲猜后者

1 个赞

阿巴阿巴

1 个赞

好活,再多定义几个宏,直接实现肉身CPython :+1:

3 个赞

显然,这是Python,因为这个define没有把括号后面的 : 算进去 :crazy_face:
(而且咱也不懂,为啥 { 后面还要加个 _

2 个赞

这样设计的冒号是可以忽略的,也就是说可以作为CPP编译通过并运行

2 个赞

啊这,知识盲区了,只写过C :joy:

3 个赞

一眼看上去前者,故秒猜后者 :melting_face:

3 个赞

恭喜你
正确答案是:两个都是

4 个赞

都能编译?o.0 我不信
我的 gcc 只愿意相信 main 可以被 int

1 个赞

python运行,输出为空
cpp运行,输出为 Hello, World!

2 个赞

注意看宏定义

1 个赞

Python里井号是注释,好好好

1 个赞

让我来多按几个tab

9 个赞

很明显,是python因为#后面全是注释,是cpp因为用了宏定义把代码包装成了python的样子

2 个赞

这不用想吧
这种宽松的宏替换只有C吧

国际C语言混乱代码大赛

1 个赞

cpp

这不在cpp和py都能跑通吗:joy:

在公司这样写可是会被上会点名的

1 个赞