gpt4 book ai didi

c++ - 使用标准库计算字符串中的十进制数

转载 作者:行者123 更新时间:2023-12-01 14:08:50 24 4
gpt4 key购买 nike

我在字符串中有空格分隔的整数,例如:

std::string s = "1 2 33 444 0 5";

字符串格式良好:只有空格分隔的数字,没有任何字母、换行符等。

如何以STL方式计算上述字符串中的整数数量?我正在寻找一些“短”的东西,它将使用例如迭代器或 <algorithm> .

最佳答案

std::count_if(s.begin(),s.end(), [](unsigned char c){ return std::isspace(c);}) + 1
编辑:
如果字符之间有多个/不同的空格,那么您可以将 lambda 更改为:

    [](unsigned int c)
{
static bool prev = false;
bool current = isspace(c);
bool new_space = !prev && current;
prev = current;

return new_space;
}

关于c++ - 使用标准库计算字符串中的十进制数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62122597/

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