gpt4 book ai didi

c++ - C++中从字符串中提取数字

转载 作者:行者123 更新时间:2023-11-30 01:04:18 33 4
gpt4 key购买 nike

假设我有以下字符数组:

char *word="R12_X8_10";

数字的个数不固定,但非数字字符的位置是固定的。如何在没有提升的情况下提取数字?我应该通过拆分单词得到 {"12", "8", "10"}。

这应该是一项简单的任务,因为我在 Java 中做过很多次,但在 C++ 中却让我费尽心思。

最佳答案

C++ 流方式是获取或简单地忽略标记 字符。例如忽略它们你可以使用:

const char *word = "R12_X8_10";
int i, j, k;
std::stringstream ss(word);

ss.ignore(1) >> i;
ss.ignore(2) >> j;
ss.ignore(1) >> k;

或什至(更紧凑,如果不是更具可读性的话):

((ss.ignore(1) >> i).ignore(2) >> j).ignore(1) >> k;

(不相关,但请注意 wordconst,因为字符串文字不应分配给非 const 指针)。

关于c++ - C++中从字符串中提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50373999/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com