Ada语言基础

系统 2060 0

  前天是程序员节 ,CodeForces 上举办了一场比赛 , 要求必须使用 ADA 语言提交 . 顿时虐爆了我这个只知道 pascal,C,BASIC 3 语系的菜 . 今天闲着看 看这种语言 , 一看才知道竟然是美国军方专用计算机语言 . 总体感觉 : 什么 JB 玩意儿 , C 语言差的远了 . 主要是写代码时感觉几乎没啥自由度 , 让人十分不爽 , 操作还那么麻烦 .

    第一个程序照例是那最经典的 HW.

    然而 , 我将程序写到源文件之后却始终无法 build, 最后我放弃了最常用的直接新建一个 .adb 文件的方法而采用 GPS.exe 的新建 , 终于编译出了可执行文件 .

    程序如下 :

with Ada.Text_IO;

procedure Main is

begin

   Ada.Text_IO.Put("Hello World!");

   Ada.Text_IO.New_Line;

   null;

end Main;

ADA 语言中采用 ”--” 作为注释的标志 ,”--” 之后知道行末的内容将被编译器忽略 .

with Ada.Text_IO; 差不多相当于 C 里的 #include<stdio.h>, 先这么理解 .

程序框架 :

Procedure procedure_name is

Statement1;

Begin

Statement2;

End procedure_name;

其中 ,statement1 是对变量或函数的声明部分 ,statement2 是程序的语句 .

为了方便 , 可以使用 use 语句 : use  Ada.Text_IO; 这样 , 在以后调用 Put 或者 New_Line 时就不用再加上 Ada.Text_IO. . 有点类似于 C++ 中最常用的 using namespace std;

变量的声明方法 : 变量名 : 变量类型 := 初始化值

改进版的 HW 程序 :

with Ada.Text_IO;

use Ada.Text_IO;

procedure Main is

   Str:String:="Hello World!";

begin

   Ada.Text_IO.Put("Hello World!");

   Ada.Text_IO.New_Line;

   Put("Hello World!");

   New_Line;

   Put(Str);

   New_Line;

end Main;

Ada 语言中数字字面值中间可以加入下划线以帮助阅读 , 454548456484 454_548_456_484 就没有什么区别 . 不过要注意的一点是两个下划线不能连用 , 下划线也不能加在数字末尾 .

除此之外 ,Ada 语言中可以直接采用 2~16 进制数来编写字面值 , 格式为 Base # Number #. 5 # 1234 #, 表示 5 进制下的 1234.

变量赋值操作符 :=

循环格式 :

循环名 :

Loop

代码 ...

End loop  循环名

Get_Line(String,Natural): 读入一行 Natural 返回字符串长度 .

Get(val): 读入 val 的值 .

下标访问 :A(5) 表示 A 的索引为 5 的元素 .

Exit Name :  Name 的代码段里退出 , 类比 break,return,

If 语句格式 :

If ( 表达式 ) then

代码段 ;

End if;

逻辑运算符 :

= : 返回是否相等 .( >= , <= 类似 ).

字面值类型转换 :Float(100), 类比 C 语言中的 (double)100.

 

Ada语言基础


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论