Ada:如何将枚举打印为小写
Ada: How to print Enumerations as Lowercase
我的名字以大写字母开头,其余为小写字母。它只打印全部大写。如何打印我定义的?谢谢!
在 Ada.Text_IO.Enumeration_IO
实例中调用相关 Put
过程时,为 Type_Set
参数指定 Lower_Case
。鉴于这些声明,
type Name_Type is (Alice, Bob, Carl);
package Name_IO is new Ada.Text_IO.Enumeration_IO (Name_Type);
以下代码在控制台上打印 "bob":
Name_IO.Put(Bob, Name_IO.Default_Width, Ada.Text_IO.Lower_Case);
Can I do "Bob" instead of "bob"?
是;例如,
使用Ada.Characters.Handling
, the functions To_Lower
, To_Upper
, and To_Basic
are available for both strings and characters, as shown here.
使用 Enumeration_IO
和 Ada.Strings.Fixed
,以下片段打印 "Bob".
Upper : String(1 .. 8);
Lower : String(1 .. 8);
…
Name_IO.Put(Upper, Bob, Ada.Text_IO.Upper_Case);
Name_IO.Put(Lower, Bob, Ada.Text_IO.Lower_Case);
Ada.Text_IO.Put_Line(Ada.Strings.Fixed.Trim(
Upper(Upper'First) & Lower(Lower'First + 1 .. Lower'Last),
Ada.Strings.Right));
我的名字以大写字母开头,其余为小写字母。它只打印全部大写。如何打印我定义的?谢谢!
在 Ada.Text_IO.Enumeration_IO
实例中调用相关 Put
过程时,为 Type_Set
参数指定 Lower_Case
。鉴于这些声明,
type Name_Type is (Alice, Bob, Carl);
package Name_IO is new Ada.Text_IO.Enumeration_IO (Name_Type);
以下代码在控制台上打印 "bob":
Name_IO.Put(Bob, Name_IO.Default_Width, Ada.Text_IO.Lower_Case);
Can I do "Bob" instead of "bob"?
是;例如,
使用
Ada.Characters.Handling
, the functionsTo_Lower
,To_Upper
, andTo_Basic
are available for both strings and characters, as shown here.使用
Enumeration_IO
和Ada.Strings.Fixed
,以下片段打印 "Bob".Upper : String(1 .. 8); Lower : String(1 .. 8); … Name_IO.Put(Upper, Bob, Ada.Text_IO.Upper_Case); Name_IO.Put(Lower, Bob, Ada.Text_IO.Lower_Case); Ada.Text_IO.Put_Line(Ada.Strings.Fixed.Trim( Upper(Upper'First) & Lower(Lower'First + 1 .. Lower'Last), Ada.Strings.Right));