Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我无法理解(std::cin>;)是否循环 我对编程一般都是全新的,目前是自学C++。这是我第一天学习,目前我正在理解循环_C++ - Fatal编程技术网

我无法理解(std::cin>;)是否循环 我对编程一般都是全新的,目前是自学C++。这是我第一天学习,目前我正在理解循环

我无法理解(std::cin>;)是否循环 我对编程一般都是全新的,目前是自学C++。这是我第一天学习,目前我正在理解循环,c++,C++,这是我试图使用和理解的代码 int start = 0, end = 0; while(true){ std::cout<<"Input a starting number: "; if(std::cin>>start){ //PLACEHOLDER TEXT }else{ std::cout<<"You have entered

这是我试图使用和理解的代码

int start = 0, end = 0;
  
  while(true){
      
      std::cout<<"Input a starting number: ";
      if(std::cin>>start){
          //PLACEHOLDER TEXT
      }else{
          std::cout<<"You have entered an incorrect starting number. Please enter again.";
          std::cout<<std::endl;
          start = 0;
      }
  }


intstart=0,end=0;
while(true){
std::coutstart){
//占位符文本
}否则{

std::cout
std::cin
在尝试将字母读取到int后处于失败状态,并且输入流中保留了一个字母。您应该清除std::cin状态,并在if或else之前忽略以前的输入:

std::cin.clear();
std::cin.ignore();


通常,在输入请求之前,你应该总是忽略输入:STD:CIN。它保护了不耐烦用户输入的随机字符的读取。

谢谢你解释为什么和如何修复它。我的背景不是计算机科学,但是我希望我能成为C++的好一个。大邑不确定这是好的建议。它引入RA。当标准输入被重定向时,例如从文件重定向时,ces和其他问题。不幸的是,C++的库不足以正确处理此问题。您必须使用特定于平台的方法来检测输入是否来自交互式tty,并且只进行忽略,然后。。。