代码之家  ›  专栏  ›  技术社区  ›  Ivo van der Bruggen

控制台在获取整数后暂停

  •  -4
  • Ivo van der Bruggen  · 技术社区  · 8 年前

    因此,当我创建一个包含2个整数的程序时,将它们相加并将其写入控制台。问题是我正在学习使用多个类。程序工作,但在获得第一个整数后,控制台暂停,只有在我输入另一个整数后才继续。你们能给我个提示/解释一下出了什么问题吗?

    int readNumber()
    {
        cout << "Enter an integer: ";
        int x;
        cin >> x;
        return x;
    }
    
    void writeAnswer(int result)
    {
        cout << "The result is: " << result;
    }
    
    int main()
    {
        int x;
        readNumber();
        cin >> x;
    
        int y;
        readNumber();
        cin >> y;
    
        int result = x + y;
    
        writeAnswer(result);
    
        system("pause");
    }
    
    1 回复  |  直到 8 年前
        1
  •  4
  •   stefaanv    8 年前

    在此语句块中:

    int x;
    readNumber(); // first time
    cin >> x; // second time
    

    这个 std::cin 对象被调用两次。这就是为什么你会看到 暂停 . 消除不必要的呼叫 标准::cin 并将上述内容替换为:

    int x = readNumber();
    

    y 变量