2014-01-08 2 views
2
#include<iostream> 
using namespace std; 
int main() 
{ 
    double money; 
    cout << "Input the sum of money: "; 
    cin >> money; 
.... 

나는 다른 값 (알파벳 문자)이 입력되고 입력을 다시 요청하기 위해 코드가 반복 될 경우 오류 메시지를 표시 할 수 있도록 입력 된 값이 숫자인지 확인하려고했습니다. 돈)입력 한 값이 숫자인지 어떻게 확인할 수 있습니까?

+0

무엇 모두 대문자의 제목입니까? – Mysticial

+0

@ 신비로운, 모든 대문자 제목은 무엇입니까? – chris

+0

제목이 대문자로 표시된 이유는 무엇입니까? – user3175142

답변

2
while ((cin >> money) == false) 
{ 
... 
} 
2

입력 후 스트림 상태를 확인할 수 있습니다. 당신이 입력을 반복하려는 경우 예를

if (!(std::cin >> money)) std::cout << "Oh, I made a mistake!\n"; 

그리고 당신은

std::cin.clear(); 
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); 

헤더를 포함하는 것을 잊지 마세요 호출해야 <limits>

관련 문제