c++ - 在 std::string 上使用 strtol

标签 c++ string

我最近从 C 迁移到 C++,对字符串有点困惑。字符串不再是它们过去的样子,例如,不仅仅是带有终止符“\0”的字符数组。 我还没有找到这个问题的真正答案,那么你能在多大程度上像对待 C 字符串一样对待 std::string 类?

例如:如果我知道字符串中某处有一个数字,让该字符串为 ireallylike314,在 C 中我可以使用 strtol(string + 10, NULL, 10) 只是得到那个数字。 而且,如果这不起作用,有没有办法像 C 字符串一样使用 std::string?

最佳答案

使用c_str()

strtol(string.c_str() + 10, NULL, 10);

关于c++ - 在 std::string 上使用 strtol,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29104707/

相关文章:

android - 在 Android 中,_id 是否必须存在于任何创建的表中?

mysql - 在数据库中搜索文本字符串,可能是标签

python - 计算每行的字数

c++ - 无法为命名空间中的私有(private)枚举重载 i/o 运算符

python - 为什么链接器在未在任何地方指定时寻找 python36_d.lib?

c++ - std::atomic_flag 作为成员变量

string - 如何将一个字符串附加到另一个字符串?

string - 在 MATLAB 中计算字符串单元格

c++ - 如何从二进制数据调用函数

c++ - 帧缓冲区对象替代品?