Как преобразовать один символ в строке в int - PullRequest
2 голосов
/ 04 апреля 2010

Имейте в виду, что если вы решите ответить на вопрос, я новичок в области программирования, и мне, возможно, понадобится немного больше объяснений, как работают решения.

Спасибо за вашу помощь.

Моя проблема в том, что я пытаюсь выполнить вычисления с частями строки (состоящей только из чисел), но я не знаю, как преобразовать отдельный символ в int. Строка называется «message».

for (int place = 0; place < message.size(); place++)
        {
            if (secondPlace == 0)
            {
                cout << (message[place]) * 100 << endl;
            }
        }

Спасибо.

1 Ответ

5 голосов
/ 04 апреля 2010

Если вы хотите преобразовать символ '0' в целое число 0 и '1' в 1 и т. Д., То простейший способ сделать это, вероятно, следующий:

int number = message[place] - '0';

Поскольку символы для цифр кодируются в ascii в порядке возрастания номеров, вы можете вычесть значение ascii '0' из значения ascii рассматриваемого символа и получить число, равное цифре.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...