我有这个循环,其中arr是一个整数数组。

for(int i=0; i<=counter;i++)
    {
        cin>>arr[i];
    }
我正在这样输入
2 4 6 7
我想在7点之后按下Enter键,就可以打破这个循环。

我认为可以用类似的方法完成
if(cin.get()=="\n")
但是我不明白如何在此代码中实现它。

最佳答案

如果您想在按Enter键时退出for循环。您需要先检查给定的输入,然后再将其放入数组。
如果等于'\n',则将for循环保留为break

for (int i = 0; i <= counter; i++) {
    // Check if user pressed the Enter Key
    if(std::cin.peek() == '\n') {
        // Leave the for loop
        break;
    }
    std::cin >> arr[i];
}
为了确保不会从cin.get()中清除输入,我们可以改用 cin.peek()

10-01 06:50
查看更多