c++ - 如何将字符串数字转换为单个数字的 int 数组

标签 c++ string

我有 20 个数字字符串,例如:12345678912345678912。 我想把它变成一个整数数组 [1,2,3...2] 我该怎么做? (我一直在使用 sstream、atoi/stoi 时出错)

最佳答案

创建一个新数组,并将每个数字字符转换为数字。只需从数字字符中减去 '0' 即可得到数字。

数字字符 - '0' = 该字符的 ASCII 值 - '0' 的 ASCII 值 = 数字。

std::vector<int> digits;
for (int i = 0; i < s.size(); i++)
    digits.push_back(s[i] - '0');

关于c++ - 如何将字符串数字转换为单个数字的 int 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55566503/

相关文章:

c++ - C++ 读取文件

c++ - 为类模板的枚举成员定义 std::hash

c++ - C++中类字符串的内部结构

javascript - ' and "之间有区别吗

c++ - gRPC:RPC 处理程序如何正确检测 `Server` 是否为 `Shutdown()`

c# - 什么是C# 等同于C++ STL 填充方法

java - 如何将字符串完美居中 Jpanel 中心

regex - c中字符串的正则表达式

string - 我如何从 python 中的一组单词中寻找最短的唯一子序列?

c++ - 评估 boolean 语句的顺序是什么?