1
int main()
{
    string selection;
    // print out selection menu
    selection = userOption();
    cout << selection << endl;

    //now perform web parser
    webparser(selection);    

    //now perform searchstring
    searchString(selection);
return 0;
}

上記は私の部分的なコード文字列です userOption() は、このようなメニューを出力する関数です

通貨

  1. 米ドル/シンガ​​ポールドル
  2. ユーロ/米ドル
  3. 独自の通貨ペアを入力してください
  4. プログラムを終了する

userOption からの選択が 4 になるまでメインを終了しないようにするにはどうすればよいですか

4

3 に答える 3

2

シンプルな do-while:

int main()
{
  string exitstr("4");
  string selection;
  do {
    // print out selection menu
    selection = userOption();
    cout << selection << endl;
    if (selection == exitstr)
      break;
    //now perform web parser
    webparser(selection);    

    //now perform searchstring
    searchString(selection);
  } while (1);
return 0;
}
于 2012-07-25T06:18:12.997 に答える
1
int main()
{
    string selection;
    while( (selection = userOption()) != "4")
    {
        cout << selection << endl;
        //now perform web parser
        webparser(selection);    
        //now perform searchstring
        searchString(selection);
    }
    return 0;
}
于 2012-07-25T06:17:22.490 に答える
1
int main()
{
    for (;;)
    {
        string selection;
        // print out selection menu
        selection = userOption();
        cout << selection << endl;

        if (selection == "4") break;

        //now perform web parser
        webparser(selection);    

        //now perform searchstring
        searchString(selection);
    }
    return 0;
}

perrealsの回答に似ています。「エンドレス」ループの書き方はたくさんありますが、ループヘッダーで ( this または by としてwhile(true)) 表現する方がよいと思います。ループを読み始めると、終了条件が内部のどこかにあることがすぐにわかります。

于 2012-07-25T06:19:33.390 に答える