请问大家C/C++、JAVA、php、pascal、python、perl等程序语言的常用编译器是什么?谢谢大家了 50

嘿嘿初学,想了解一下,但不知道怎么下手,希望大家能给一些建议,谢谢以及一些常用工具,嘿嘿希望能多提供点,谢谢大家... 嘿嘿 初学,想了解一下,但不知道怎么下手,希望大家能给一些建议,谢谢
以及一些常用工具,嘿嘿 希望能多提供点, 谢谢大家
展开
 我来答
zbjdy
2007-10-19
知道答主
回答量:17
采纳率:0%
帮助的人:0
展开全部
pascal
1、关于Turbo Pascal

Pascal是一种计算机通用的高级程序设计语言。它由瑞士Niklaus Wirth教授于六十年代末设计并创立。

以法国数学家命名的Pascal语言现已成为使用最广泛的基于DOS的语言之一,其主要特点有:严格的结构化形式;丰富完备的数据类型;运行效率高;查错能力强。

正因为上述特点,Pascal语言可以被方便地用于描述各种算法与数据结构。尤其是对于程序设计的初学者,Pascal语言有益于培养良好的程序设计风格和习惯。IOI(国际奥林匹克信息学竞赛)把Pascal语言作为三种程序设计语言之一, NOI(全国奥林匹克信息学竞赛)把Pascal语言定为唯一提倡的程序设计语言,在大学中Pascal语言也常常被用作学习数据结构与算法的教学语言。

在Pascal问世以来的三十余年间,先后产生了适合于不同机型的各种各样版本。其中影响最大的莫过于Turbo Pascal系列软件。它是由美国Borland公司设计、研制的一种适用于微机的Pascal编译系统。该编译系统由1983年推出1.0版本发展到1992年推出的7.0版本,其版本不断更新,而功能更趋完善。

下面列出Turbo Pascal编年史

出版年代 版本名称 主要特色

1983 Turbo Pascal 1.0

Turbo Pascal 2.0

Turbo-87 Pascal 提高实数运算速度并扩大值域

1985 Turbo Pascal 3.0 增加图形功能

Turbo BCD Pascal 特别适合应用于商业

1987 Turbo Pascal 4.0 提供集成开发环境(IDE),引入单元概念

1988 Turbo Pascal 5.0 增加调试功能

1989 Turbo Pascal 5.5 支持面向对象的程序设计(OPP)

1990 Turbo Pascal 6.0 提供面向对象的应用框架和库(Turbo Vision)

1992 Turbo Pascal 7.0 面向对象的应用系统、更完善的IDE

Turbo Vision 2.0

1993 Borland Pascal 7.0 开发 Object Windows库、

__(For Windows) 提供对OLE多媒体应用开发的支持

1995 Delphi

Visual Pascal

Turbo Pascal语言是编译型程序语言,它提供了一个集成环境的工作系统,集编辑、编译、运行、调试等多功能于一体

ps:高级语言发展过程中,PASCAL是一个重要的里程碑。PASCAL语言是第一个系统地体现了E.W.Dijkstra和C.A.R.Hoare定义的结构化程序设计概念的语言。1971年,瑞士联邦技术学院尼克劳斯·沃尔斯(N.Wirth)教授发明了另一种简单明晰的电脑语言,这就是以电脑先驱帕斯卡的名字命名的PASCAL语言。PASCAL语言语法严谨,层次分明,程序易写,具有很强的可读性,是第一个结构化的编程语言。它一出世就受到广泛欢迎,迅速地从欧洲传到美国。沃尔斯一生还写作了大量有关程序设计、算法和数据结构的著作,因此,他获得了1984年度“图灵奖”。

Pascal有5个主要的版本,分别是Unextended Pascal、Extended Pascal、Object-Oriented Extensions to Pascal、Borland Pascal和Delphi Object Pascal。其中,Unextended Pascal、Extended Pascal和Object-Oriented Extensions to Pascal是由Pascal标准委员会所创立和维护的,Unextended Pascal类似于瑞士Niklaus Wirth教授和K.Jensen于1974年联名发表的Pascal用户手册和报告,而Extended Pascal则是在其基础上进行了扩展,加入了许多新的特性,它们都属于正式的Pascal标准;Object-Oriented Extensions to Pascal是由Pascal标准委员会发表的一份技术报告,在Extended Pascal的基础上增加了一些用以支持面向对象程序设计的特性,但它属于非正式的标准。Borland Pascal和Delphi Object Pascal是由Borland公司专门为其开发的编译工具设计的Pascal语言,前者是用于DOS的Turbo Pascal系列和Windows 3.x的Turbo Pascal for Windows的传统高级语言,后者是用于Windows的Delphi和Linux的Kylix的面向对象程序设计语言,它们都不是正式的Pascal标准,具有专利性。但由于Turbo Pascal系列和Delphi功能强大并且广为流行,Borland Pascal和Delphi Object Pascal已自成为一种标准,为许多人所熟悉。

看到这里,你可能会发觉我的回答与你最初的设想不同。你原来可能是想问Turbo Pascal有几个版本,然而我却回答了Pascal语言有几个版本。这就是初学者常有的一个错误认识:Pascal是一种编程工具。实际上,Pascal是一种程序设计语言的名称(从一般意义上说,Pascal也可以是指人名,它的取名原本就是为了纪念十七世纪法国著名哲学家和数学家Blaise 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下的最后版本。

现在,随着Turbo Pascal逐渐被淘汰,全国信息学奥林匹克竞赛决赛(NOI)和国际信息学奥林匹克竞赛(IOI)已经指定Free Pascal为比赛使用的Pascal编程工具。Free Pascal是由一个国际组织开发的32位Pascal编程工具,属于共享软件,可用于各种操作系统。根据编译选项的不同,它可以使用Borland Pascal兼容语法、Delphi 2 Object Pascal语法或者其它语法进行编写程序。由于它拥有32位的编译器,而且一直在更新发展中,因此它的功能比Borland Pascal更加强大,拥有许多现代程序设计的特征,但同时也很不成熟,存在很多漏洞。Free Pascal正处于发展初期,相应的函数库十分少,对程序员的吸引力远比不上拥有VCL和CLX的Delphi和Kylix。

2、帕斯卡(Pascal,Blaise,1623年6月19日-1662年8月19日)是法国数学家、物理学家、思想家。生於克莱蒙费朗,早逝於巴黎。父亲是数学家、“梅森学会”成员,对他的早期教育影响很大。他自幼聪颖,求知欲极犟,12岁始学几何,即通读欧几里得(Euclid)的《几何原本》(Elements)并掌握了它。16岁时发现著名的帕斯卡六边形定理:内接於一个二次曲线的六边形的三双对边的交点共线。据说他后来由此推出400多条推论。17岁时写成《圆锥曲线论》(1640),是研究德札尔格(Girard Desargues)射影几何工作心得的论文,包括上述定理。这些工作是自希腊阿波罗尼奥斯(Apollonius of Perga)以来圆锥曲线论的最大进步。1642年他设计并制作了一台能自动进位的加减法计算装置,被称为是世界上第一台数字计算器,为以后的计算机设计提供了基本原理。1654年他开始研究几个方面的数学问题,在无穷小分析上深入探讨了不可分原理,得出求不同曲线所围面积和重心的一般方法,并以积分学的原理解决了摆线问题,於1658年完成《论摆线》。他的论文手稿对莱布尼茨(Gottfried Leibniz)建立微积分学有很大启发。在研究二项式系数性质时,写成《算术三角形》向巴黎科学院提交,后收入他的全集,并於1665年发表。其中给出的二项式系数展开后人称为“帕斯卡三角形”,实际它已在约1100年由中国的贾宪所知。在与费马(Pierre Fermat)的通信中讨论赌金分配问题,对早期概率论的发展颇有影响。他还制作了水银气压计(1646),写了液体平衡、空气的重量和密度等方向的论文(1651-1654)。自1655年隐居修道院,写下《思想录》(1658)等经典著作。
基本符号以及保留字:
pascal语言只能使用一下几类基本符号:
(1)大小写英文字母
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
(2)数字
1 2 3 4 5 6 7 8 9 0
(3)其他符号
+ - * / = <> <= >= < > ( ) [ ] { } := , . ; : .. '
注意,pascal语言除了可以使用以上规定的字符外,不得使用其他任何符号。

补充说明FreePascal(FP):
Free Pascal是一个在多种版本Pascal和Delphi下的产物,目前比较成熟的版本是由FreePascal.org发布的1.0.10版本,由于是Pascal上的改版,在FP里加入了很多以前没有的东西,例如:FillChar系列内存块赋值语句,用Power代替了**(乘方),但是**还是可以使用。
另外FP加强了与内存的互容性,增大对内存的支持,FP里的内存限制是TP和BP里的将近上万倍。
FP还进一步加强了单元支持、面向对象程序设计的支持、显卡(声卡)的支持、图形高级覆盖的支持、Windows\Linux\OS/2\..等众多系统的支持。在FP的较稳定版本中,可以方便的利用Win32编译模式,编译出Windows应用程序,与Delphi的功能相当。同时对动态连接库、控件、数据库、文件、网络、OpenGL的深入支持,使得FP脱颖而出。
更值得提出的是,FP支持Delphi及C++的部分语言,例如:A+=2这样的C Style语言,在FP里完美支持。
FP中支持单目、双目操作符,即所有版本的Pascal的符号和“@”等特殊符号。

FreePascal.org现在正在修订FP 2.0的版本,但使用起来并没有1.0.10那样轻松,稳定性也下降不少
夜猫香槟
2007-10-19 · TA获得超过479个赞
知道小有建树答主
回答量:351
采纳率:0%
帮助的人:0
展开全部
多看书,建议买湖北师范大学出版社的信息学奥林匹克教程(一套)。我们这里搞竞赛的都用这个。效果很好。另附:free pascal的函数:
一、数学函数:

Inc(i) 使I:=I+1;
Inc(I,b) 使I:=I+b;
Abs(x) 求x的绝对值 例:abs(-3)=3
Chr(x) 求编号x对应的字符。例:Chr(65)=’A’ chr(97)=’a’ chr(48)=’0’
Ord(x) 求字符x对应的编号。例:ord(‘A’)=65 ord(‘a’)=97 另外:ord(false)=0 ord(true)=1
Sqr(x) 求x的平方。 例:sqr(4)=16
Sqrt(x)求x的开方. 例:sqrt(16)=4
round(x) 求x的四舍五入 例:round(4.5)=5
trunc(x) 求x的整数部分 例:trunc(5.6)=5 结果是integer型
int(x) 求x的整数部分 例int(5.6)=5.0 结果是real型
frac (x)求x的小数部分 例 frac(5.6)=0.6
pred(x) 求x的前导 pred(‘b’)=’a’ pred(5)=4 pred(true)=false
succ(x) 求x的后继 succ(‘b’)=’c’ succ(5)=6 succ(false)=true
odd(x) 判断x是否为奇数。如果是值为true,反之值为false. Odd(2)=false odd(5)=true
power(a,n) 求a的n次方 power(2,3)=8
random 取0~1之间的随机数(不能取到1)
randomize 随机数的种子函数,在每次设置随机数时都要把这个函数放在最前面.
Fillchar(a,size(a),0) 数组初始化,即把数组a的值全部置为0
SHR: x SHR n 把x换成二进制后向右移n位,相当于 把x 除以 2n
SHL: x SHL n把x换成二进制后向左移n位,相当于 把x 乘以 2n

二、字符串函数
1. 连接运算 concat(s1,s2,s3…sn) 相当于s1+s2+s3+…+sn.
例:concat(‘11’,’aa’)=’11aa’;
2. 求子串。 Copy(s,I,L) 从字符串s中截取第I个字符开始后的长度为l的子串。
例:copy(‘abdag’,2,3)=’bda’
3. 删除子串。过程 Delete(s,I,l) 从字符串s中删除第I个字符开始后的长度为l的子串。
例:s:=’abcde’;delete(s,2,3);结果s:=’ae’
4. 插入子串。 过程Insert(s1,s2,I) 把s1插入到s2的第I个位置
例:s:=abc;insert(‘12’,s,2);结果s:=’a12bc’
5. 求字符串长度 length(s) 例:length(‘12abc’)=5
6. 搜索子串的位置 pos(s1,s2) 如果s1是s2的子串 ,则返回s1的第一个字符在s2中的位置,若不是子串,则返回0.
例:pos(‘ab’,’12abcd’)=3
7. 字符的大写转换。Upcase(ch) 求字符ch的大写体。
例:upcase(‘a’)=’A’
8. 数值转换为数串。 过程 Str(x,s) 把数值x化为数串s.
例:str(12345,s); 结果s=’12345’
9. 数串转换为数值。 过程val(s,x,I) 把数串s转化为数值x,如果成功则i=0,不成功则I为无效字符的序数
例:val(‘1234’,x,I);结果 x:=1234
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sbrenshouyi
2007-10-15
知道答主
回答量:27
采纳率:0%
帮助的人:0
展开全部
turbo c
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
暗核
2007-10-19
知道答主
回答量:41
采纳率:0%
帮助的人:9.5万
展开全部
turbo c
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式