#include <iostream>

#include <string>

#include <sstream>

#include <algorithm>

using std::cerr;

using std::cout;

using std::stringstream;

using std::string;

using std::for_each;



void convert(const string& a_value)

{

    unsigned short i;

    if (stringstream(a_value) >> i)

        cout << a_value << " converted to " << i << ".\n";

    else

        cerr << a_value << " failed to convert.\n";

}



int main()

{

    string inputs[] = { "abc", "10", "999999999999999999999", "-10", "0" };

    for_each(inputs, inputs + (sizeof(inputs)/sizeof(inputs[0])), convert);

    return 0;

}

