2

如果我有一个像 1234 这样的数字,我该如何专门指代该数字的第二个数字?该数字存储为变量,而 var, width=>2 给了我 12。我需要一种方法来隔离 2。

4

2 回答 2

3

作为替代方案,还要考虑Put写入 a的变体String

with Ada.Integer_Text_IO;
with Ada.Text_IO;
...
declare
   Var : constant Integer := 1234;
   Result : String(1 .. 4);
begin
   Ada.Integer_Text_IO.Put(Result, Var);
   Ada.Text_IO.Put(Result(2));
end;
于 2012-11-03T11:16:03.667 回答
3

我不确定你所说的 var, width => 2 是什么意思。这不是 Ada。

如果变量是 的子类型Integer,那么您可以说:

declare 
   Var_As_String := Integer'Image(Var);
   Second_Digit : Character := Var_As_String(3);
begin
   -- Use second digit here.
end;

请注意,索引是3因为在 的结果中Image,第一个字符是减号或空格。

于 2012-11-03T02:29:11.400 回答