这实际上是否确保数字在1到9之间? (C ++)

void set_position() {

  std::cout << "Player " << player << "'s Turn (Enter 1-9): ";

  while (!(std::cin >> position)) {

    std::cout << "Player " << player << ", please enter a valid number between 1 and 9: ";
    std::cin.clear();
    std::cin.ignore();

  }

  std::cout << "\n";

  while (board[position-1] != " ") {

    std::cout << "Oops, there's already something in that position!\n\n";

    std::cout << "Player " << player << "'s Turn (Enter 1-9): ";
    std::cin >> position;

    std::cout << "\n";
  }

}

这是在代码学院解决井字游戏挑战的一种解决方案,我想了解while(!std :: cin >> position))函数实际上是否检查它是否为1到9。position只是一个int,声明为int position = 0;这实际上如何检查它是1到9?还是只是检查它是否为整数?到目前为止,codecademy的C ++课程似乎非常糟糕,而且没有经历太多。

评论
  • id_cum
    id_cum 回复
    这实际上如何检查它是1到9?

    没有。

    您的程序中没有代码可以执行此操作。