fork(1) download
  1. #include <iostream>
  2. #include <string>
  3. using std::cout; using std::cin;
  4. using std::endl; using std::string;
  5.  
  6. int main() {
  7.  
  8. while(cin) {
  9. string name, midterm, final;
  10. cin >> name >> midterm >> final;
  11. double x;
  12. cout << endl << "Name: " << name
  13. << ", Mid: " << midterm
  14. << ", Final: " << final << "\t"
  15. << "Homework: {";
  16. while(cin >> x) {
  17. std::cout << x << ", ";
  18. }
  19. cout << "}" << endl;
  20.  
  21. if(cin.fail()) {
  22. cin.clear();
  23. string f;
  24. cin >> f;
  25. cout << "Stream failed - next token: " << f << endl;
  26. }
  27. }
  28. }
Success #stdin #stdout 0s 16064KB
stdin
p1 90 91 92 93 94 p2 81 82 83 84 85
stdout
Name: p1, Mid: 90, Final: 91	Homework: {92, 93, 94, }
Stream failed - next token: p2

Name: 81, Mid: 82, Final: 83	Homework: {84, 85, }
Stream failed - next token: