有什么想法吗?
(完成)我想在我的字符串中搜索特定的单词
(已完成)如果找到该词
(任何想法)我想输出矢量的数量,它就是其中的单词。
我这里有字符串模块[MODULENO + 1] = {“”,“数学”,“科学”,“法语”,“英语”};我在这个字符串中搜索一个单词..我找到那个单词..我想要的是输出正在的数字...让我说我正在搜索英语..我发现那个单词...现在我想要输出((模块英语在向量4中))
提前谢谢
答案 0 :(得分:1)
我将此代码从接受的答案复制到您的其他问题:
bool checkValidTitle(string modules[], string word_to_check)
{
for (int i = 1; i <= MODULENO; ++i)
if (modules[i] == word_to_check)
return true;
return false;
}
如果您想要数字索引而不是布尔值,请更改函数返回类型和return
语句:
int getModuleNo(string modules[], string word_to_check)
{
for (int i = 1; i <= MODULENO; ++i)
if (modules[i] == word_to_check)
return i;
return -1; // some magic value to indicate "not found"
}
使用此功能的一种可能方法是:
string word = "English";
int index = getModuleNo(modules, word);
std::cout << "Module " << word << " is number " << index << '\n';
答案 1 :(得分:0)
我想您应该使用 std :: find 来查找元素,而不是 std :: distance 来计算元素的索引。