對此有何想法?
(完成)我想搜索我的字符串的特定單詞
(完成)如果找到這個單詞
(任何想法)我想輸出它的單詞向量的數量。在字符串中搜索一個單詞並返回與矢量數相對應的數字。 C++
我這裏有這個字符串模塊[MODULENO + 1] = {「」,「Maths」,「Sciences」,「French」,「English」};我搜索這個字符串的單詞..我找到了這個詞..我想要的是輸出的矢量數在..讓我說我正在尋找英語..我發現這個詞...現在我要輸出((模塊英語是矢量4))
預先感謝您
對此有何想法?
(完成)我想搜索我的字符串的特定單詞
(完成)如果找到這個單詞
(任何想法)我想輸出它的單詞向量的數量。在字符串中搜索一個單詞並返回與矢量數相對應的數字。 C++
我這裏有這個字符串模塊[MODULENO + 1] = {「」,「Maths」,「Sciences」,「French」,「English」};我搜索這個字符串的單詞..我找到了這個詞..我想要的是輸出的矢量數在..讓我說我正在尋找英語..我發現這個詞...現在我要輸出((模塊英語是矢量4))
預先感謝您
我複製從接受的答案這段代碼到你的其他問題:
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';
我想要的是返回該模塊所在的向量數。 我不認爲這樣做? = /非常感謝你 – alex 2012-07-30 16:14:31
我需要這樣的事嗎? [鏈接] INT getModuleNo(串的模塊[],串word_to_check){ \t \t的for(int i = 1; I
@alex:目前尚不清楚「矢量數」的含義。這將返回找到單詞匹配的索引。如果「英文」位於「模塊[4]」,則函數將返回值「4」。 – Blastfurnace 2012-07-30 16:18:06
我猜你應該使用的std ::發現找到一個元素,比的std ::距離到計算元素的索引。
您能否澄清您的要求?我不知道你在這裏要求什麼。 – 2012-07-30 14:59:21
那麼,所有這些單詞在向量中,或者當你說矢量時,你是否想要報告匹配在單詞串中的單詞的索引? – pstrjds 2012-07-30 14:59:27
最好向我們展示您嘗試過的方式,並尋求具體幫助。然而,看起來像你只是想要http://en.cppreference.com/w/cpp/string/basic_string/find – BoBTFish 2012-07-30 14:59:41