这是我的打印声明:
timeInMili: duration;
timeInMili := (finish - start)*1000;
Put_Line(duration'image(timeInMili));
Run Code Online (Sandbox Code Playgroud)
(乘以1000以从秒开始变为毫秒)
以上产生了很多小数位.有人可以给我看一个如何用一定数量的小数位打印的例子.
Ada.Text_IO.Fixed_IO是定点类型的通用包,可以更好地控制输出格式而不是'Image属性.
一个例子:
with Ada.Text_IO; use Ada.Text_IO;
procedure Foo is
package Duration_IO is new Fixed_IO(Duration);
timeInMili: Duration := 1.0 / 3.0;
begin
Duration_IO.Put(timeInMili, Fore => 0, Aft => 2);
New_Line;
end Foo;
Run Code Online (Sandbox Code Playgroud)
输出:
0.33
Run Code Online (Sandbox Code Playgroud)