gpt4 book ai didi

c++ - 如何计算字符串中的单词数?

转载 作者:行者123 更新时间:2023-11-30 05:29:36 28 4
gpt4 key购买 nike

我在我的程序的main函数中已经提示用户输入一个字符串并存储在userString中,想显示有多少个字。

这是我打算从 main 调用的函数:

int countWords(string d) {
string words = " ";
for (int e = 0; e < d.length(); e++) {
if (isspace(d[e])) {
cout << "The string " << words << "word(s). ";
}
}
return words;
}

我在某处读到该函数实际上应该计算空格的数量(这就是我使用 isspace() 的原因),而不是单词本身。

如何计算字符串中的单词数并在同一个函数中显示它?我在弄清楚它时遇到了麻烦,而且我遇到了错误。

我也不能使用库函数。

预期输出:

  • 字符串“2020”有一个词。
  • 字符串“Hello guys”有两个词。

最佳答案

如果您不想使用 boost,一个简单的 for 循环就可以了。

#include <cctype>

...

for(int i = 0; i < toParse.length(); i++){
if (isblank(toParse[i])){
//start new word
}
else if (toParse[i] == '.'){
//start new sentence
}
else if (isalphanum(toParse[i])){
//add to your current word
}
}

编辑:您可以在看到//start new word 的地方增加一个整数。

关于c++ - 如何计算字符串中的单词数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36323797/

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