fork download
  1. #include <iostream>
  2. #include <sstream>
  3. using namespace std;
  4.  
  5. static int test(const char *p) {
  6. istringstream iss(p);
  7. int argument;
  8. char more;
  9. if(iss >> argument) {
  10. if(iss >> more) {
  11. cerr<< p << ": arguments must be integer" << endl;
  12. return -1;
  13. } else {
  14. cout << p << " parsed as integer" << endl;
  15. return 0;
  16. }
  17. } else {
  18. cerr<< p << ": arguments must be integer" << endl;
  19. return -1;
  20. }
  21. }
  22.  
  23. int main() {
  24. char inp[128];
  25. while(cin >> inp) {
  26. test(inp);
  27. }
  28. return 0;
  29. }
Success #stdin #stdout #stderr 0s 4548KB
stdin
-1 aasmsnsak 42 1111111111111111111111111111111111111 -1111111111111111111111111111111111111 12345678 -98765432 42test test42 0 01
stdout
-1 parsed as integer
42 parsed as integer
12345678 parsed as integer
-98765432 parsed as integer
0 parsed as integer
01 parsed as integer
stderr
aasmsnsak: arguments must be integer
1111111111111111111111111111111111111: arguments must be integer
-1111111111111111111111111111111111111: arguments must be integer
42test: arguments must be integer
test42: arguments must be integer