有某种解决方法可以利用以下内容并保存它?
Put_Line(MyNum, Base => 16);
它将例如 255 转换为十六进制 FF 中的正确值,但仅用于显示目的。我可以做类似的事情,但要保存结果吗?
您可以使用输出到字符串的 Put 版本:
procedure Put(To : out String;
Item : in Num;
Base : in Number_Base := Default_Base);
我可以做类似的事情,但要保存结果吗?
是的,这不是“最简单”的方式,但如果您使用 Streams,它会非常通用且灵活。
wikibook 有一个示例,尽管它对于您的意图有点“罗嗦”:http ://en.wikibooks.org/wiki/Ada_Programming/Libraries/Ada.Streams/Example
简单的“单线”是Ada.Integer_Text_IO.Put
.
Ada95 的 RM 在附件 A 10.8 中描述了 integer_text_IO。