看来你的意思是 #include <limits>//...if ( not ( std::cin >> arr[i] ) ){ //... std::cin.clear(); std::cin.ignore( std::numeric_limits<std::streamsize>::max(), '\n' );} 从C中的cin读取空格分隔的数字++ 当您在while循环中使用lineOfInput作为条件时,它将一直运行,直到进入失败...