将无界字符串转换为整数 Ada
Convert unbounded string to integer Ada
我的问题很简单,因为 Google 让我失望了。如何将无界字符串转换为整数?
如果字符串是有界的,我可以这样做:I : Integer := Integer'Value("613");
然而,我的字符串是无界的,Ada 抛出这个错误:
expected type "Standard.String"
found private type "Ada.Strings.Unbounded.Unbounded_String"
我想做的事情可行吗?
您只需要进行中间转换:
I : Integer := Integer'Value (To_String (T));
这是一个完整的测试程序:
with Ada.Strings.Unbounded; use Ada.Strings.Unbounded;
with Ada.Text_IO; use Ada.Text_IO;
procedure Main is
T : Unbounded_String := To_Unbounded_String ("613");
I : Integer := Integer'Value (To_String (T));
begin
Put_Line (I'Image);
end Main;
我的问题很简单,因为 Google 让我失望了。如何将无界字符串转换为整数?
如果字符串是有界的,我可以这样做:I : Integer := Integer'Value("613");
然而,我的字符串是无界的,Ada 抛出这个错误:
expected type "Standard.String"
found private type "Ada.Strings.Unbounded.Unbounded_String"
我想做的事情可行吗?
您只需要进行中间转换:
I : Integer := Integer'Value (To_String (T));
这是一个完整的测试程序:
with Ada.Strings.Unbounded; use Ada.Strings.Unbounded;
with Ada.Text_IO; use Ada.Text_IO;
procedure Main is
T : Unbounded_String := To_Unbounded_String ("613");
I : Integer := Integer'Value (To_String (T));
begin
Put_Line (I'Image);
end Main;