0

次のコードを使用して、文字列を入力し、範囲を見つけて、出力にコピーしようとしました

int main(int argc, const char * argv[])
 {

  vector<string> vec;
  copy(istream_iterator<string>(cin), istream_iterator<string>(),back_inserter(vec));
  vector<string>::iterator first = find(vec.begin(),vec.end(),"start");
  vector<string>::iterator last = find(vec.begin(),vec.end(),"end");

  if(first < last)
    copy(first,last,ostream_iterator<string>(cout,"\n"));

  return 0;
 }

unix コマンド ラインからプログラムを実行し、(ctrl+z) を使用して入力を終了しましたが、ターミナルには何も書き込まれませんでした。istream_iterator で他のスレッドを読みましたが、入力が完了したことをプログラムに伝える唯一の方法は ctrl+z だと思います。しかし、後で出力する必要がありますか?(ちなみに、最初と最後のイテレータが有効であることを確認するために、「開始」と「終了」を含む文字列を入力しました)。

上記のプログラムを IDE (Xcode) からも実行しましたが、入力用のコマンド ラインが表示されません。表示するものはありますか? または私はいくつかをしなければなりませんか

cout << "Please enter words: " 

入力を求めるプロンプトの種類は?

ありがとう!

4

0 に答える 0