我正在制作一个程序,将ascii字符'a'转换为'z'和'A'转换为'Z'。 (只有字母)。例如, a + 1 = b
a + 2 = c
b + 1 = c
A + 1 = B
所以我唯一不确定如何做的就是映射。我怎样才能使得当checklower / checkupper为真时,基本上映射到小写字母(例如,z + 2 = b)。
答案 0 :(得分:3)
最简单的方法可能是使用%
模数运算符:
int letter_add = ((input.at(i) - 'a' + cmd_int) % 26) + 'a';
你需要一个大写字母的对称线(或者只是将'a'
变成一个变量)。