Jack06 发表于 2015-10-30 22:31:46

C++语句执行顺序,求教???

int main()
{
      char answer;

      std::cout << "可以格式化您的硬盘吗?";
      std::cin >> answer;
      std::cout << "\n";

      switch( answer )
      {
      case 'Y':
      case 'y':
            std::cout << "我想还是别了, 数据丢了妈妈会骂的~" << "\n";
            break;

      case 'N':
      case 'n':
            std::cout << "您的选择是正确的, 硬盘不能随便给人格式化!" << "\n";
            break;

      default:
            std::cout << "请输入回答问题。" << "\n";
            break;
      }

    std::cout << "输入任意键结束程序!" << "\n";
      std::cin.get();
      std::cin.ignore(100, '\n');

      return 0;
}









程序中红色标注的部分,std::cin.ignore(100, '\n');不是应该放到std::cin.get();语句前面吗?但是放到后面也成立,为什么?


yuan88k 发表于 2015-11-3 19:04:58

这里对新手不太关注,我也刚开始学习C++,我的理解是缓冲区里没有残余数据了,你最后一句加不加没关系,如果有残余的的话应该放在cin.get()前面
页: [1]
查看完整版本: C++语句执行顺序,求教???