对比PASCAL和C语言的差异

掌握基本语法之后,快速掌握一种语言的
第二技巧是和你熟悉的一种开发语言对比一下。
记得当年学习程序设计语言的时候。
我们班也和现在的网络上一样,有喜欢PASCAL的,有喜欢C语言的。两边争得不亦乐乎。
其实Turbo C和Turbo Pascal在Borland的调教之下,功能是差不多的。
其实我是先用Turbo Pascal,再转入Borland C++的。中途只是考试用了一下Turbo C。
要说两种语言,我也是先亲近PASCAL,后来爱上C语言的。
开始我喜欢PASCAL的严谨,每一个语法都有严格的语法图示。
Turbo PASCAL电一般的编译速度。
嗯,后来更喜欢C语言一些,源于他们对函数处理的一个区别。
C语言是不能再函数中定义一个函数的。虽然也可以嵌套。
但PASCAL可以,可以在定义部分,定义一个仅仅这个函数使用的函数。
我仔细对比了之后,认为C语言这种做法,使得C语言更简洁,更精巧。
因为:
(1)在函数体外定义一个函数,需要的时候,调用即可,显得更简单简洁,好理解。
(2)PASCAL的这个机制,给PASCAL的学习带来困扰,理解这样的嵌套函数,也很费力。
实际上,我更喜欢Turbo PASCAL提供的unit这个功能。
一个单元就是一个模块。在任何一个单元中,分为接口和实现两个部分。
我们要用这个模块,只需要理解接口中的调用函数用法就可以了。
和C语言/C++的头文件,实现文件机制非常的像。
但是,单元文件编译后,我们对接口不可见,不像C语言,读读头文件,基本能掌握十之八九。
但是unit单元提供的这种接口/实现相分离的机制,一直给我留下了深刻的印象。
所以,PASCAL更适合作为教学语言,给刚刚接触结构化编程的学生建立严格的训练。
而C/C++,适合作为其后作为开发技能的训练。
至于我们当年还争论begin  end和{ }的区别,
现在想想,多无聊啊,IDE都帮你实现了,不用你输入字符,都一样。