回答編集履歴

1

質問文が変更されていたので、それに対応。

2015/03/29 14:27

投稿

katoy
katoy

スコア22324

test CHANGED
@@ -36,13 +36,13 @@
36
36
 
37
37
  ```
38
38
 
39
- eof() が true になるのは、**最後の を読んだ後に さらに ifs >> suji を実行した後**です。
39
+ eof() が true になるのは、**最後の数字 を読んだ後に さらに ifs >> suji を実行した後**です。
40
40
 
41
- 質問文にある while の回り方の場合、 最後の 5 を読んだ後は まだ eof() は false です。
41
+ 質問文にある while の回り方の場合、 最後の 数字 を読んだ後は まだ eof() は false です。
42
42
 
43
43
  そして 次に ifs >> suji を実行したとき suji には値が設定されません。
44
44
 
45
- (suji の値は 5 のまま)
45
+ (suji の値は 最後の数字 のまま)
46
46
 
47
47
  値が設定されないことは 質問文の while を
48
48
 
@@ -60,8 +60,8 @@
60
60
 
61
61
  のようにして、実行してみるとよいです。
62
62
 
63
- 1 2 3 4 5 -999 と出力されるはずです。
63
+ .... -999 と出力されるはずです。
64
64
 
65
65
 
66
66
 
67
- while(ifs >> suji) とした場合は、5 を読んだ後 while の条件文の ifs >> suji が false になるので、while を抜けてくれます。
67
+ while(ifs >> suji) とした場合は、最後の数字を読んだ後 while の条件文の ifs >> suji が false になって、while を抜けてくれます。