В C++ один очень красивый способ переконвертировать цифру, представленную в виде символа, в цифру числовую. Этот способ работает крайне быстро, хотя не все его знают. Я использую его везде, где необходимо осуществить подобное преобразование.
Способ до ужаса прост и в принципе его описание даже не тянет на полноценную хаутошку =) Он основан на том, что с символьными переменными также можно производить действия вычитания и сложения.
Допустим у нас есть символ c равный '5':
char c = '5';
Для того, чтобы перевести этот символ в цифру 5, нам необходимо вычислить разницу между символами '5' и '0':
int i = c - '0';
В результате этого действия в переменную i попадёт число 5.
Этот принцип можно использовать, чтобы проверить является ли символ буквой алфавита. Я думаю, что вы без труда напишите парочку строк, позволяющую реализовать это.