Ada子程序概述.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Ada子程序概述.pdf

Ada⼦程序概述 概述 (Overview) ⼀个程序是由⼀个或更多的⼦程序组成,以⼀个主过程(main procedure)为根本,主 过程类似与 C 下的 main 函数。⼦程序包括过程(proceudre)和函数(function)两类,两 区别在于,过程没有返回值,⽽函数有返回值。 ⼦程序,包括函数和过程,以及下⼀章所讲述的程序包,是构成 Ada 程序的基 础。Ada 提供了⼀些和 C、Pascal 不同的新特性,如重载、参数模式、分离程序等。 过程(Procedure) 过程我们以前已经见过了,但那些都是主过程(main procedure) ,即程序的主体部 体,作⽤和C下的 main 函数相似。⼀般情况下,Ada 程序的主程序名应当和该主程序 所在的⽂件名相同。过程的声明格式如下: procedure procedure_name (parameter_specification); 它的执⾏部份则为: procedure procedure_name (parameter_specification) is declarations; begin statements; end procedure_name ; p rocedure_name 为该过程的名称;p arameter_sp ecif ication 是这个过程所要使⽤的参 数,是可选的;declarations 是声明⼀些局部的新类型、变量、函数、过 程;statements 则是该过程要执⾏的语句。 下例创建⼀个⽐较两数⼤⼩,并输出较⼤值的过程: procedure compare (A :Integer; B :Integer) is begin if A B then Put_Line (A B); elsif A B then Put_Line (A B); else Put_ine (A B); end if; end compare; 下例则是完整的程序: 000 -- filename:comp.adb; 001 with Ada.Text_IO; use Ada.Text_IO; 002 with Ada.Integer_Text_IO; use Ada.Integer_Text_IO; 003 procedure comp is 004 procedure compare (A :Integer; B :Integer) is 005 begin 006 if A B then 007 Put_Line (A B.); 008 elsif A B then 009 Put_Line (A B.); 010 else 011 Put_ine (A B.); 012 end if; 013 end compare; 014 X,Y :Integer; 015 begin 016 Put (Enter A :); Get (X); 017 Put (Enter B:); Get (Y); 018 compare (X,Y); 019 end comp; 通过上例,对过程的⽤法应该会有基本的了解了。因为 compare 的执⾏部分是在 comp 内部,所以我们⽆须给出单独的 compare 声明,如果要加⼀ 句procedure compare (A:Integer; B :Integer) ; ,程序还是⽼样⼦。声明部份和执⾏部 份⼀般在使⽤程序包时分离。其中Put_Line ,Get也都是预定义的过程。 函数 (Function) 函数和过程也很像,只是它还要有返回值,和 C 很相似,也⽤ return 来返回函数 值。声明格式为: function f unction_name (p arameter_sp ecif ication) return return_typ e; 执⾏部份为: function f unction_name (p arameter_sp ecif ication) retur

文档评论(0)

jackzjh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档