Ada-打印持续时间数据类型时如何控制小数点?
这是我的打印声明:Ada-打印持续时间数据类型时如何控制小数点?,ada,Ada,这是我的打印声明: timeInMili: duration; timeInMili := (finish - start)*1000; Put_Line(duration'image(timeInMili)); (乘以1000从秒变为毫秒) 上面给出了很多小数位。有人能给我举个例子,说明如何使用设定的小数位数进行打印。
timeInMili: duration;
timeInMili := (finish - start)*1000;
Put_Line(duration'image(timeInMili));
(乘以1000从秒变为毫秒)
上面给出了很多小数位。有人能给我举个例子,说明如何使用设定的小数位数进行打印。
'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;
输出:
0.33
当我试图添加Ada.Duration\u Io库时,它说它不是预定义的库。@Nwqp没有
Ada.Duration\u Io
,我在Keith的回答中没有看到Ada.Duration\u Io
。他的代码通过实例化Ada.Text\u IO.Fixed\u IO
定义了一个新的Duration\u IO
包。我喜欢可选的Fore
和Aft
参数的航海感觉。直观、简洁,并保持代码井然有序,符合布里斯托尔时尚。。。。