-3
asciiコードを配列インデックスに変換するための単純な関数を扱っています。else-if文に少し問題があります。else if文が予期せず実行されないelse文として動作する
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;
}
ザ・条件に関係なく、文字は、zにかない範囲aにあるかどうかの、スペースに罰金や火災を動作しますが、それ以外の他のすべてのケースでのステートメント火災の場合ならば。その状態で私が見ることができない問題はありますか?
これは問題ではありませんが、あなたは( '」「'キャストする必要はありません。または他の文字リテラルのいずれか)を 'int 'に変換します。コンパイラは '=='の反対側の 'int'にマッチするようにそれを変換します。 –