我正在使用Ada并获取和int,我需要检查它是否是一个转换为int的字符,将其转换回来并针对一个字符进行测试。问题是我不想打字
if intToChar(popped) = 'a' | 'A' | 'b' | 'B' | (etc.)
then
我是Ada的新手,所以我想知道是否有一种更简单的方法可以做到这一点,而不是输入52或者。我尝试了一些事情,但没有成功。
我想知道我是否可以使用类似字符范围'a'...'Z'(也是'a''''Z'得到整个字母?或者'A'...'z' ?),但我知道这些是值,在类型中使用时实际上不是字符。
我也可以创建一个函数进行检查,但我只需要在代码中的一个位置执行此操作,因此我在这里缺少的快捷方式会很好。我还可以使用一个函数来检查变量是否是一个字符,如果它包含在Ada中。
答案 0 :(得分:5)
找到Ada.Characters.Handling.Is_Letter()
答案 1 :(得分:5)
你真的不需要地图:
Subtype Uppercase is Character Range 'A'..'Z';
Subtype Lowercase is Character Range 'a'..'z';
If C in Uppercase or C in Lowercase then
...
End if;
当然,对于更复杂的检查,地图{或集}是可行的方法。