这应该只接受字母,但还不正确:
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main()
{
    std::string line;
    double d;
    while (std::getline(std::cin, line))
    {
        std::stringstream ss(line);
        if (ss >> d == false && line != "") //false because can convert to double
        {
            std::cout << "its characters!" << std::endl;
            break;
        }
        std::cout << "Error!" << std::endl;
    }
    return 0; 
}
这是输出:
567
Error!
Error!
678fgh
Error!
567fgh678
Error!
fhg687
its characters!
Press any key to continue . . .
fhg687由于字符串中的数字,应该输出错误。
接受的输出应仅包含字母,例如ghggjh.