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

发布于 2024-08-27 06:13:08 字数 411 浏览 9 评论 0原文

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

感谢您的帮助。

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

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

谢谢。

Keep in mind, if you choose to answer the question, I am a beginner in the field of programming and may need a bit more explanation than others as to how the solutions work.

Thank you for your help.

My problem is that I am trying to do computations with parts of a string (consisting only of numbers), but I do not know how to convert an individual char to an int. The string is named "message".

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

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小…红帽 2024-09-03 06:13:08

如果您的意思是要将字符 '0' 转换为整数 0,将 '1' 转换为 1 等,最简单的方法可能如下:

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

由于数字字符以升序编码为 ascii,因此您可以从中减去 '0' 的 ascii 值相关字符的 ascii 值并获取等于该数字的数字。

If you mean that you want to convert the character '0' to the integer 0, and '1' to 1, et cetera, than the simplest way to do this is probably the following:

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

Since the characters for digits are encoded in ascii in ascending numerical order, you can subtract the ascii value of '0' from the ascii value of the character in question and get a number equal to the digit.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文