zasdfgbnm 发表于 2010-8-7 09:04:46

以假乱真Pascal

#include <stdio.h>
#define begin int main()
#define end return 0;
#define writeln(a) printf(a);
begin
   writeln("I'm not Pascal!!!");
end

朔雪X忆 发表于 2010-8-7 10:00:16

………………………………
#号就能说明一切了…………

xzxzxz 发表于 2010-8-7 10:10:38

#define begin int main()

#define end return 0;

#define writeln(a) printf(a);




...

Nero 发表于 2010-8-7 13:44:31

等效替换……

bruce55 发表于 2010-8-7 16:39:31

Pascal是Begin
writeln('I'm pascal.')
End.注意标点符号

Cichol 发表于 2010-8-7 18:32:47

LS正解

zhj 发表于 2010-8-8 10:08:55

同上

zhj 发表于 2010-8-8 10:25:06

我就想能不能搞一个Pascal-C++编译器
把那堆Define都放到头文件,然后把Pascal程序放进来,再替换几个不同的语法(如字符串表示方法)即可

hcz 发表于 2010-8-8 10:48:02

Begin
writeln('I''m pascal.');
End.

xzxzxz 发表于 2010-8-8 11:22:42

8# zhj

某oj网站提供这个服务,具体哪个忘记了。。

zhj 发表于 2010-8-10 13:04:19


Begin
writeln('I''m pascal.');
End.
上面的语法是不正确的,虽然自Turbo Pascal7之后编译器的容错能力得到了增强,但这样的写法仍然是不规范的。
Pascal语法规定:语句和语句之间使用分号分隔。end不是语句。
正确的语法:
begin
writeln('I''m pascal.')
end.
页: [1]
查看完整版本: 以假乱真Pascal