cin循环输入控制问题

之前写一个简单的输入节点值自动生成链表的测试程序,发现cin的输入控制好像在VC++6.0和VS2010中不一样,特此记录。

现在有以下代码:

        vector<int> ivec;
    int tmp ;
    while(cin >> tmp)
    {
        ivec.push_back(tmp);
    }
    vector<int>::iterator iter = ivec.begin();
    while(iter != ivec.end())
    {
        cout << *iter++ ;
        if(iter != ivec.end())
            cout << "->";
    }
    cout << endl;

VC++6.0中输入数据结束使用ctrl+z后需要连续两次回车,而使用ctrl+d后只需要一次回车。结果图如下

 

    VC++6.0使用ctrl+z                 VC++6.0使用ctrl+d

使用Visual Studio 2010Ctrl+z和Ctrl+d都只需要一次回车就结束了。

     

     VS 2010 Ctrl+z                 VS 2010 Ctrl+d

总结,改用ctrl+d。

 

posted @ 2016-07-23 09:17  BestWangJie  阅读(484)  评论(0编辑  收藏  举报