将ascii字符代码转换为0-26之间的值

时间:2015-02-21 23:50:47

标签: algorithm language-agnostic ascii

今天大家好,我有一个关于将ascii代码转换为0-26之间的数学所涉及的数学问题。

使用小写字母时,它只是字符代码 - 65.但是,如果我遇到大写字母,它就不再是这样了。

我想知道将任何字母ascii代码转换为0-26之间的值的算法是什么

1 个答案:

答案 0 :(得分:0)

以下代码应该适用于C和C ++:

int codeFor(char ch) {
   if (ch >= 'A' && ch <= 'Z') {
      return ch - 'A';
   } else if (ch >= 'a' && ch <= 'z') {
      return ch - 'a';
   } else {
      /* do something to report an error. */
   }
}

请注意,此程序中没有像65这样的常量 - 字符文字更容易用于这些目的。

希望这有帮助!