如何将字符串中的单个char转换为int

Gue*_*est 3 c++ string int char

请记住,如果您选择回答问题,我是编程领域的初学者,可能需要比其他人更多解释解决方案如何工作.

谢谢您的帮助.

我的问题是我试图用字符串的一部分进行计算(仅由数字组成),但我不知道如何将单个字符转换为int.该字符串名为"message".

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

谢谢.

Amb*_*ber 6

如果你的意思是你要的字符转换'0'为整数0,并'1'1,等等,不是要做到这一点最简单的方法可能是以下几点:

int number = message[place] - '0';
Run Code Online (Sandbox Code Playgroud)

由于数字的字符按升序数字顺序编码为ascii,因此您可以'0'从相关字符的ascii值中减去ascii值,并得到一个等于该数字的数字.