1

次の文字列を使用します。

asking  a question    is easy

whileループが欲しい

  • 最初の単語を取るasking,
  • 関数でそれについて何かをチェックし、
  • それから次の単語に行きますa
  • など、文字列の最後まで

単語は、1 つ以上のスペースで区切ることができます。

編集:

説明するとき、私は実際に間違いを犯したと思います。ここで私が取り組んできたこと:

int main()
{
    cout<<"string="; gets(string);
    cout<<"template="; cin>>template;
    while (i<strlen(string))
    {
        k=0;
        while (string[i]!=' ')
        {
            word[k]=string[i];
            i++; k++;
        }
        if (function(string,word)==1) count++;
        while (i<strlen(s) && string[i]==' ')
          i++;
    }
    cout <<"count="<<count;
}

学校と同じように、古い/基本的な C++ に固執したいと思います。

4

1 に答える 1

0

文字列をastd::stringstreamに貼り付けてから、ループ内で文字列から単語を抽出しwhileます(ストリームがまだ正常であることを確認するため)。

std::string str("asking a question is easy");
std::stringstream ss(str);
std::string word;
while (ss >> word) {
  // Do something
}
于 2012-12-15T11:16:24.807 に答える