在实例中调用相关过程时,请Lower_Case
为Type_Set
参数指定。鉴于这些声明,Put
Ada.Text_IO.Enumeration_IO
type Name_Type is (Alice, Bob, Carl);
package Name_IO is new Ada.Text_IO.Enumeration_IO (Name_Type);
Run Code Online (Sandbox Code Playgroud)
以下代码在控制台上显示“ bob”:
Name_IO.Put(Bob, Name_IO.Default_Width, Ada.Text_IO.Lower_Case);
Run Code Online (Sandbox Code Playgroud)
我可以用“鲍勃”代替“鲍勃”吗?
是; 例如,
使用Ada.Characters.Handling
的功能To_Lower
,To_Upper
以及To_Basic
可用于字符串和字符,如图所示这里。
使用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));
Run Code Online (Sandbox Code Playgroud)