[C++] 5.10 std::cin 더 잘 활용하기
by #독개#/*
std::cin 더잘쓰기
우리가 의도하지 않은 입력이 들어왔을때 어떻게 대응을 해야할지
cin.clear : cin객체의 "내부 상태 플래그"를 초기화시켜서 cin 관련 기능이 정상작동 하도록함!
cin.fail : cin 오류시 1을 반환하고 아니면 0을 반환함!
cin.ignore : 입력 버퍼에 있는 모든 내용을 버림!
*/
#include <iostream>
int main()
{
using namespace std;
while (true)
{
static int inputedValue = 0;
cout << "숫자를 입력하셔야 합니다" << endl;
cout << "입력: ";
cin >> inputedValue;
if (cin.fail() == 1)//오류시에
{
cin.clear(); //에러 플래그 없앤다(즉, cin.fail을 초기화 이걸안하면 cin.fail은 계속 1상태라 무한히출력
cin.ignore(100, '\n'); //100(임의로큰숫자하면됨)개 이상의 문자가 입력되거나 엔터가 입력되기 전까지 입력 시퀀스에 있는 모든 내용을 버린다
}
else
{
cout << "정답입니다";
break
}
}
return 0;
}
🐱👓독하게 개발
'🔥 프로그래밍 학습 > C++' 카테고리의 다른 글
[C++] 6.2 배열 Array 기초 #2 (0) | 2022.11.14 |
---|---|
[C++] 6.1 배열 Array 기초#1 (0) | 2022.11.14 |
[C++] 5.9 난수만들기 random, rand(), srand() (0) | 2022.11.14 |
[C++] 5.8 break,continue (0) | 2022.11.14 |
[C++] 5.7 반복문 for (0) | 2022.11.14 |
블로그의 정보
독한 개발자
#독개#