Скажем, у меня есть char, извлеченный из строки (str.at(i)), как бы преобразовать этот символ в число, такое, что A = 0, B = 1, C = 2... Z = 25? Заранее спасибо
Предполагая, что строка уже находится в диапазоне AZ
, вы можете сделать char_value - 'A'
.
Это предполагает, что буквы все подряд. Итак, 'B' == 'A' + 1
, 'C' == 'A' + 2
и т.д. В ASCII это предположение верно.
Каждый символ имеет определенный код ASCII! Как A = 65, b = 66.. и т.д. !! Если вы просто вычитаете 65 или "A" из каждого символа, вы получите желаемый int
например:
int a = charArray[i] - 65;
if: charArray[i] = A
then: a = 0
& скоро!!