我正在开发一个简单的函数来将ascii代码转换为数组索引,而且我在使用else-if语句时遇到了一些麻烦。
int getIndex(char character) {
int code = int(character);
int index = -1;
if (code == int(' ')){
index = 26;
} else if (int('a') <= code <= int('z')) {
index = code - int('a');
}
return index;
}
if条件正常工作并触发空格,但else if语句会在其他所有情况下触发,无论字符是否在a到z范围内。是否有一个我无法看到的问题?