在Ada中有一种方法可以将整数转换为字符吗?
例如:
TempInt := 1;
InGrid(RowIndex, ColumnIndex) := (ToCharacter(TempInt)); --This will be used to input a character value from an integer into an array of characters.
是否有任何“ToCharacter”用于整数> Ada的字符转换?
答案 0 :(得分:5)
您可能正在寻找适用于Character
的{{3}}属性,如'Val
所示。 Character'Val
的工作方式类似于一个取整数并返回Character
的函数。
答案 1 :(得分:2)
这取决于您是否要转换为ascii代码,或者您只想将整数值显示为字符串。
这里有两个案例的例子
with Ada.Text_IO; use Ada.Text_IO;
procedure test is
temp_var : Integer := 97;
begin
Put_Line ("Value of the integer shown as string: " & Integer'Image(temp_var));
Put_Line ("Value of the integer shown as the ascii code: " & Character'Val(temp_var));
end test;
结果是
显示为字符串的整数值:97
显示为ascii代码的整数值:a
答案 2 :(得分:1)
我强烈建议你查看Annex K of the LRM,因为它可能涵盖了你想要的东西,以及许多其他你还没想到的东西。
其中的相关内容:
将整数(Foo)转换为该整数值的可打印字符串表示形式:
Integer'image(Foo)
将整数(Foo,介于0和255之间)转换为由该值表示的ASCII字符:
Character'Val(Foo)
在上面的示例中,如果Foo
中的值为65,则第一行将返回字符串"65"
,而第二行将返回字符'A'
。