FP和TP的主要区别

FP和TP的主要区别

ID:40528597

大小:30.50 KB

页数:3页

时间:2019-08-04

FP和TP的主要区别_第1页
FP和TP的主要区别_第2页
FP和TP的主要区别_第3页
资源描述:

《FP和TP的主要区别》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、FreePascal和TurboPascal的主要区别虽然FreePascal尽量设计得和TurboPascal接近,但是由于以下的两个原因,两者之间还是有一些区别的:1.     FreePascal是一个32位的编译器,而TurboPascal只是16位编译器;2.     FreePascal是一个跨平台的编译器,而TurboPascal只在windows上使用。如果你的代码是遵守ANSIPascal的,那么代码从TurboPascal移植到FreePascal是没有问题的。下面是在TurboPascal上可以使用,但是在FreePascal就不能使用的一些语言特性:1.  函数和过程在

2、使用时,参数的类型必须和定义时完全一致。原因是在FreePascal中添加了函数重载功能。2.  PROTECTED,PUBLIC,PUBLISHED,TRY,FINALLY,EXCEPT,RAISE成为了关键字,因此不能作为函数和过程的名字。3.  FAR,NEAR不再是关键字了。原因是FreePascal是32位系统,不再需要这些关键字。4.  布尔表达式不一定要全部进行计算。只要最终结果已经能够确定,就不再计算其它还没有计算的部分了。比如布尔表达式exp1ANDexp2ANDexp3,如果已知exp1的结果是false,那么怎么表达式的结果肯定是false,exp2和exp3就不用进行计

3、算了。5.  在FreePascal中,集合中的元素都是4个字节长的。6.  表达式执行的顺序是不确定的。比如对于表达式a:=g(2)+f(3);不保证g(2)一定在f(3)之前执行。7.  如果用Rewrite打开文件,那么文件就只能被写入了。如果需要读取这个文件,要对文件执行Reset。8.  FreePascal在程序结束之前一定要关闭输出文件,否则输出文件可能不能被正确的写入。9.  FreePascal理论上可以使用4GB的内存,因此实际上几乎可以使用系统中的所有剩余内存(除非赛题中有内存限制)。这是FreePascal由于32位的编译器。但是对于TurboPascal来说,由于是1

4、6位的编译器,因此不能定义大小超过64KB的数据类型和变量,并且在DOS实模式下可以使用的内存总数只有640KB。下面是FreePascal相对于TurboPascal扩充的一些功能:1. 函数可以返回复杂的类型,比如记录和数组。2. 在函数中,函数的返回值可以作为一个变量来处理。比如:functiona:longint;begina:=12;whilea>4dobegin{...}end;end;这个例子在TurboPascal中,a>4会被认为是函数的递归调用,但是在FreePascal中会认为a只是一个变量。如果想在FreePascal中实现递归调用,就要写成下面的形式:function

5、a:longint;begina:=12;{thisistherecursivecall}ifa()>4thenbegin{...}end;end;3. exit可以接受一个参数作为函数的返回值。比如:functiona:longint;begina:=12;ifa>4thenbeginexit(a*67);{函数的返回值就是a*67}end;end;4. FreePascal支持函数重载。可以用相同的名字定义不同的函数,只要这些函数的参数不同,就是不同的函数。比如:procedureDoSomething(a:longint);begin{...}end;procedureDoSomethi

6、ng(a:real);begin{...}end;可以使用不同的参数类型longint或者real来调用不同的DoSomething过程。由于这个功能,函数的提前声明必须有完整的参数声明:procedurex(v:longint);forward;{...}procedurex;{这里定义的过程x重载了前面声明的过程x。因此这里的两个x是不同的}begin{...}end;5. FreePascal容许运算符重载。比如,可以自己为矩阵运算定义一个“+”运算。6. FreePascal在windows95及其以上的windows版本上支持长文件名。对于文件名,由于windows系统对大小写不敏感

7、,因此在程序中,文件名的大小写是无关的。但是对于其它大小写敏感的系统,比如linux,程序中用到的文件名必须和系统中的文件名完全一致。但是由于信息学竞赛的评测系统一般是linux,因此要求程序中的文件名和系统中的文件名一样。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。