056.record类型的初始化,赋值,以及使用

本文探讨了Ada编程语言中记录类型的具体使用方法,包括如何定义包含字符串和日期等复杂字段的记录类型,以及在实际操作中如何遵循严格的字符串赋值规则。通过示例代码展示了如何初始化和赋值这些记录类型的变量。
关于线面的一部分代码 String类型在声明的时候已经指出,一个字符串需要定义为多少个字符,那么在实际赋值的时候,必须严格按照他声明的大小来进行赋值,比如Name :String(1…15); 在对Name变量进行初始化传值的时候必须赋以一个长度为15的字符串(含空格),如果要传入的名字字符串的长度小于15那么需要在后面补齐所缺少的字符串,这里一般是利用空格作为填充。
with Ada.Text_IO;
use Ada.Text_IO;

procedure Record2 is
   
   type DATE is
      record
         Month:Integer range 1..12;
         Day:Integer range 1..31;
         Year:Integer range 1776..2010;
      end record;
   
   type PERSON is
      record
         Name :String(1..15);
         Birth_Day:DATE;
         Age:Integer;
         Sex:Character;
      end record;
   
   Self,Mother,Father:PERSON;
   
   My_BirthDay_Year: Integer renames Self.Birth_Day.Year;
   
begin
   
   Self.Name:="John Q Doe     ";
   Self.Age:=21;
   Self.Sex:='M';
   Self.Birth_Day.Month:=10;
   Self.Birth_Day.Day:=18;
   Self.Birth_Day.Year:=1938;
   My_BirthDay_Year:=1938; -- identical to previous statement
   
   
   Mother:=Self;
   Father.Birth_Day:=Mother.Birth_Day;
   Father.Birth_Day.Month:=Self.Birth_Day.Month-4;
   Mother.Sex:='F';
  
   if Mother/=Self then
      Put_Line("Mother is not equal to self");
   
   end if;
     
end Record2;

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值