如果用户没有输入任何数据,我该如何重新定位光标?

时间:2013-11-21 12:49:23

标签: c++

我正在为一个班级编写一个控制台程序。我对这项任务感到满意,但我想澄清一下什么是化妆品问题。程序将表单打印到控制台,并将光标放在表单上用户输入数据的位置。当用户在不输入数据的情况下按下回车键时会发生此问题。光标移到下一行的开头。如果用户在此之后输入数据,则程序正常运行。我想知道如果用户不输入任何数据我将如何重新定位光标。 这是读取其中一个值的代码:

  void getHousing(HANDLE screen, MonthlyBudget &inputBudget) {
          placeCursor(screen, HOUSING_ROW, ACTUAL_COL);
        cin >> inputBudget.housing;
       while (!validateEntry(screen, inputBudget.housing)) {
        placeCursor(screen, HOUSING_ROW, ACTUAL_COL);
        cout << SEVEN_SPACES << endl;
        placeCursor(screen, HOUSING_ROW, ACTUAL_COL);
        cin >> inputBudget.housing;
     }
 }

1 个答案:

答案 0 :(得分:1)

我认为你应该检查输入操作的结果。

if(cin>>inputBudget.housing)
 {
          //input ok 
 }
else 
  {
      //input failed 
  }