新手求教.关于输入终止的简单有关问题

新手求教.关于输入终止的简单问题
如何不用ctrl+d或crtl+z使以下程序终止循环?也就是说如何使其自动跳出while循环,虽然理论上说到文件尾或者处于错误状态会终止循环,可惜实际办不到啊。

C/C++ code
#include<iostream>
using namespace std;
int main(void)
{
    int i=0;
    int a;
    while(cin>>a)   //如何使其自动跳出循环?
    {
        if(a<0)
        {
            i++;
        }
    }
    cout<<"Amount of all nagative:"<<i<<endl;
    return 0;
}


------解决方案--------------------
当你从键盘输入的数不是数字的时候自然就跳出循环了啊