有一些解决办法可以利用以下内容并保存它吗?
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在Annex A, 10.8中描述了integer_text_IO。