[noip]Lazarus与free的异同,要详细的解说!

2024-05-07 00:12

1. [noip]Lazarus与free的异同,要详细的解说!

怎么个详细法.
1. Lazarus的设计目标是应用Free Pascal,所以所有凡是Free Pascal能运行的平台,Lazarus都可以运行。最新版本能运行于Linux,Win32和FreeBSD。整个界面的外观和操作和Delphi IDE一样,因此,如果你会使用Delphi的话,用起Lazarus IDE来就一定能得心应手了。
  Lazarus是一个用于FreePascal的快速应用开发(RAD)的面向对象的Pascal集成开发环境(IDE)。Lazarus 对于窗口管理来说是中性的。可以工作在KDE(1.13版本)下,也可以工作在GNOME(1.23版本)或其他窗口管理器(MVM、 WindowMaker)。Lazarus的设计目标是应用Free Pascal,所以所有凡是Free Pascal能运行的平台,Lazarus也可以运行。最新版本能运行于Linux,Win9x/2000/xp和FreeBSD。Lazarus的工作界面、外观和操作和Borland 的Delphi IDE非常相似,所不同的是Lazarus 是完全的自由软件。Lazarus 可以直接移植Delphi的代码。Lazarus的编程语言是以Pascal为基础的。Pascal语言具有可读性好、编写容易的特点,这使得它很适合作为基础的开发语言。同时,使用编译器创建的应用程序只生成单个可执行文件(.EXE),正是这种结合,使得Pascal成为Lazarus这种先进开发环境的编程语言。
  由于Lazarus为开放的IDE,且在linux下表现良好,目前被中国计算机学会指定为NOI系列竞赛的Pascal语言推荐IDE。
  在Linux中,Lazarus的图形用户接口(GUI) 由以下几个部分组成:
  窗口系统--组织显示屏上的图形输出并执行基本的文本和绘图功能。
  窗口管理器--负责对窗口的操作(比如最小化、最大化、关闭按钮的形状,窗口边框外观等)以及输入焦点的管理。
  工具包--带有明确定义的编程界面的常规库。
  Lazarus对系统软件、硬件要求都不高:
  硬件方面:Intel Pentium 200MHz、32MB内存、100MB硬盘空间。
  软件方面:内核(Kernel)在2.2以上,Qt库1.44 以上,XFree86 3.6 以上。
  此软件的官方网站地址:http://www.lazarus.freepascal.org/

[noip]Lazarus与free的异同,要详细的解说!

2. C中delete和free有什么区别?

malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。 

对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于malloc/free。 

              因此C++语言需要一个能完成动态内存分配和初始化工作的运算符new,以及一个能完成清理与释放内存工作的运算符delete。注意new/delete不是库函数。 

我们先看一看malloc/free和new/delete如何实现对象的动态内存管理,见下例。 

class   Obj 

{ 

public   : 

                Obj(void){   cout   < <   “Initialization”   < <   endl;   } 

~Obj(void){   cout   < <   “Destroy”   < <   endl;   } 

void         Initialize(void){   cout   < <   “Initialization”   < <   endl;   } 

void         Destroy(void){   cout   < <   “Destroy”   < <   endl;   } 

}; 
  
void   UseMallocFree(void) 

{ 

        Obj     *a   =   (obj   *)malloc(sizeof(obj));       //   申请动态内存 

        a-> Initialize();                                                 //   初始化 

        //… 

        a-> Destroy();       //   清除工作 

        free(a);                 //   释放内存 

} 
  
void   UseNewDelete(void) 

{ 

        Obj     *a   =   new   Obj;     //   申请动态内存并且初始化 

        //… 

        delete   a;                       //   清除并且释放内存 

} 

类Obj的函数Initialize模拟了构造函数的功能,函数Destroy模拟了析构函数的功能。函数UseMallocFree中,由于malloc/free不能执行构造函数与析构函数,必须调用成员函数Initialize和Destroy来完成初始化与清除工作。函数UseNewDelete则简单得多。 

所以我们不要企图用malloc/free来完成动态对象的内存管理,应该用new/delete。由于内部数据类型的“对象”没有构造与析构的过程,对它们而言malloc/free和new/delete是等价的。 

        既然new/delete的功能完全覆盖了malloc/free,为什么C++不把malloc/free淘汰出局呢?这是因为C++程序经常要调用C函数,而C程序只能用malloc/free管理动态内存。 

如果用free释放“new创建的动态对象”,那么该对象因无法执行析构函数而可能导致程序出错。如果用delete释放“malloc申请的动态内存”,理论上讲程序不会出错,但是该程序的可读性很差。所以new/delete必须配对使用,malloc/free也一样。

3. Turbo Pascal和freepascal有什么区别

FP是32位编译器,而TP是16位;
FP是跨平台编译器,而TP只能在WINDOWS平台使用,不用再LINUX平台使用;
FP理论上可以使用4GB的内存,因此实际上几乎可以使用系统中的所有剩余内存。这是因为FP是32位编译器。但是由于TP是16位,因此不能定义大小超过64KB的数据类型的变量,并且在DOS实模式下可以使用的内存总数只有640KB;
FP 的功能比较强大吧

Turbo Pascal和freepascal有什么区别

4. free pascal大体可以用来干什么?

原则上说,DOS窗口那种程序,他都可以编。不过现在基本不用这个,一般就是计算机竞赛和教学里面用。因为各种语言编程的基本思想都很类似,所以有些地方,特别是比较注重算法,以及程序结构的地方,就选择free pascal作为入门。

5. 请问Free Pascal与Turbo Pascal的区别。它们能通用吗?

turbo pascal:
Pascal是一门编程语言,而Turbo Pascal/Free Pascal是Pascal程序的编译系统.。
  Pascal只是一门语言,而Turbo Pascal/Free Pascal是编译器,这两个是不能比较的 。
  你可以把两个语言放在一起比较,或者两个编译器放在一起比较 。
    在中国的信息学奥林匹克竞赛中,过去比较常用的Pascal编程工具是Turbo Pascal。Turbo Pascal是DOS下的一种16位编程工具,在Delphi出现之前,它是世界上最多人使用的Pascal编程工具,拥有编译速度极快的先进编译器和功能强大而又简便易用的集成开发环境(IDE),在微机程序员中广为流行,正是它的出现奠定了Pascal在DOS/Windows平台上不可动摇的根基,现在常见的版本有Turbo Pascal 5.5、Turbo Pascal 6.0和Borland Turbo Pascal with Objects 7.0。Turbo Pascal 6.0与Turbo Pascal 5.5相比,主要是IDE更为强大,而其程序设计功能改变不大,只是增加了一些新的功能,例如可以内嵌asm汇编语句等。而Borland Turbo Pascal with Objects 7.0(简称Borland Pascal 7.0)则有了新的飞跃,首先是IDE进一步加强,提供了程序浏览器,然后是程序设计功能有了很大的提升,新增了一些十分有用的标准子程序,支持比较完善的面向对象程序设计功能,并提供了DOS实模式、DOS保护模式和Windows模式三种程序编译模式,能够编写出可以使用扩充内存(XMS)的保护模式应用程序或者在Windows 3.x下运行的Windows程序,另外还提供了一个对象窗口库(OWL),使用它可以快速的开发出具有一致的视窗界面(DOS或Windows 3.x)的应用程序。Borland Pascal 7.0在1992年推出,是Turbo Pascal系列在DOS下的最后版本。
Free Pascal
  现在,随着Turbo Pascal逐渐被淘汰,全国信息学奥林匹克竞赛决赛(NOI)和国际信息学奥林匹克竞赛(IOI)已经指定Free Pascal为比赛使用的Pascal编程工具。Free Pascal是由一个国际组织开发的32/64位Pascal编程工具,属于自由软件,可用于各种操作系统。根据编译选项的不同,它可以使用Turbo Pascal兼容语法、Delphi 语法或者其它语法进行编写程序。由于它拥有32/64位的编译器,而且一直在更新发展中,因此它的功能比Borland Pascal更加强大,拥有许多现代程序设计的特征。但它对程序员的吸引力比不上拥有VCL和CLX的Delphi和Kylix。
  Free Pascal是一个在多种版本Pascal和Delphi下的产物,目前比较成熟的版本是由FreePascal. org发布的2.2.4版本(最新版本为2.4.4,但在使用的时候,2.4.4经常会莫名其妙的中止编译),由于是Pascal上的改版,在FP里加入了很多以前没有的东西,例如:FillChar系列内存块赋值语句,用Power代替了**(乘方),但是**还是可以使用。
  另外FP加强了与内存的互容性,增大对内存的支持,FP里的内存限制是TP和BP里的将近上万倍。
  FP还进一步加强了单元支持、面向对象程序设计的支持、显卡(声卡)的支持、图形高级覆盖的支持、Windows\Linux\OS/2\..等众多系统的支持。在FP的较稳定版本中,可以方便的利用Win32编译模式,编译出Windows应用程序,与Delphi的功能相当。同时对动态连接库、控件、数据库、文件、网络、OpenGL的深入支持,使得 FP 在各种 Pascal 编译系统中脱颖而出。
  更值得提出的是,FP支持Delphi及C++的部分语言,例如:A+=2这样的C Style语言,在FP里完美支持。
  FP中支持单目、双目操作符,即所有版本的Pascal的符号和“@”等特殊符号。
  FP 支持运算符重载。
  FP现为竞赛推荐工具。
  最新发布版本为 2011 年 5月 22 日发布的 2.4.4。
  最新 bugfix 版本为 svn repo 里的 2.4.3。

请问Free Pascal与Turbo Pascal的区别。它们能通用吗?

6. free pascal 是什么

free pascal是pascal编程软件的一种。。。其余的还有其他不同版本比如说Turbo Pascal ,Visual Pascal等等。。。

Pascal是一种计算机通用的高级程序设计语言。Pascal语言语法严谨,层次分明,程序易写,具有很强的可读性,是第一个结构化的编程语言。
其主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。正因为上述特点,Pascal语言可以被方便地用于描述各种算法与数据结构。尤其是对于程序设计的初学者,Pascal语言有益于培养良好的程序设计风格和习惯。IOI(国际奥林匹克信息学竞赛)把Pascal语言作为三种程序设计语言之一,NOI(全国奥林匹克信息学竞赛)把Pascal语言定为唯一提倡的程序设计语言,在大学中Pascal语言也常常被用作学习数据结构与算法的教学语言。
其余的可以去百度知道搜pacal即可^^

7. 什么是FREE PASCAL

Free Pascal是个由国际组织开发的完全的win32的pascal语言编译器,类似delphi,可编写windows程序。
  此前被广泛使用的PASCAL编译器普遍为Turbo Pascal & Borland pascal。但是它们可用的空间十分有限。而Free Pascal理论上可以使用4GB内存。所以在利用Free Pascal编程的时候,可以改变原有思路,将大量时间转嫁给空间,提高效率。

什么是FREE PASCAL

8. 现在信息学用的free pascal一开始是如何使用?请帮忙,在什么地方打程序/结果在什么地方?

Fp一点也不复杂。。。下好以后一般会有一个叫pp的文件夹
打开pp/bin/win32/fp.exe就可以写程序了。
对于初学者来说,按Ctrl+F9运行程序,直接在屏幕上看就行了
有信息学的问题可以上www.oibh.org问。
最新文章
热门文章
推荐阅读