with Ada.Text_IO,Ada.Integer_Text_IO;
use Ada.Text_IO,Ada.Integer_Text_IO;
procedure AllInt is
Data :Integer;
Form :Positive;
Once :Natural;
type MY_INTEGER is range -1000..24000;
type MY_SHORT is range -12..127;
subtype MY_SUBTYPE is MY_INTEGER range -12..127;
Index :MY_INTEGER:=345;
Stuff :MY_INTEGER:=33;
Count :MY_SHORT:=54;
begin
Put("the type MY_SHORT covers the range of");
Data :=Integer(MY_SHORT'First);
Put(Data);
Put(" to");
Data:= Integer(MY_SHORT'Last);
Put(Data);
New_Line;
Put(" and its base covers the range of ");
Data:=Integer(MY_SHORT'Base'First);
Put(Data);
Put(" to ");
Data:=Integer(MY_SHORT'Base'Last);
Put(Data);
New_Line(2);
Put("the type My_INTEGER covers the range of");
Put(Integer(MY_INTEGER'First));
Put(" to ");
Put(Integer(MY_INTEGER'Last));
New_Line;
Put(" and its base covers the range of ");
Put(Integer(MY_INTEGER'Base'First));
Put(" to ");
Put(Integer(MY_INTEGER'Base'Last));
New_Line(2);
if Index in MY_INTEGER then
Put_Line("Index is in the range of MY_SUBTYPE");
end if;
if Index not in MY_INTEGER then
Put_Line("Index is not in the range of MY_SUBTYPE");
end if;
if Index in 12..377 then
Put_Line("index is in the range of 12..377");
end if;
if Index not in Stuff ..3*(Stuff-4) then
Put_Line("index is not in the range of Stuff ..3*(Stuff-4)");
end if;
end AllInt;
020.再论不同数据类型的取值范围
最新推荐文章于 2022-06-16 15:11:29 发布