47044


C++で下記のことで困っています。  
入力が終わったら、while文をぬけたいのですがどうしたらよいのでしょうか。

## インプット

1 3 8 9

## 期待する挙動

g++でコンパイルして、./a.outとしてコンソール上で実行。  
9を入力してエンターを押したら下記のように出力されるプログラムが終了すること。

1  
3  
8  
9

## 困っていること

9を入力してエンターを押しても、まだ入力を受け付けた状態になってしまい、whileループを抜けられない

## コード

[code]

    #include <iostream>
    
    using namespace std;
    
    int main() {
      string s;
      while(cin >> s) {
        cout << s << endl;
      }
    }
    
[/code]


CC BY-SA 4.0
2018-07-28T03:21:26.957
47043
2018-07-28T06:45:36.517
2018-07-28T06:45:36.517
7291
29267
question
c++ shell
C++言語での入力終わりまでcinで入力を受け付ける方法


プログラムに入力が終了したこと(EOF: end of file)を知らせる必要があります。

Windowsの場合、`Control+z`を入力するとEOFになります。  
MacやLinuxの場合は、`Control+d`を入力するとEOFになります。

参考: [How to enter the value of EOF in the
terminal](https://stackoverflow.com/questions/11968558/how-to-enter-the-value-
of-eof-in-the-terminal?answertab=active#tab-top)


CC BY-SA 4.0
2018-07-28T03:37:45.983
47044
2018-07-28T03:37:45.983
47043
answer