c++ cin 콜론 기준으로 숫자 입력받기

조회수 712회

c언어에서 scanf로 입력받을 때는

scanf("%d:%d", &a, &b);

이런식으로 숫자만 입력받을 수 있는데 c++에서는 cin을 사용해서 어떻게 작성 해야하나요?

1 답변

  • 예외 처리 없이 정확하게 입력했다는 가정하에서는 아래와 같이 간단합니다.

    #include <iostream>
    
    using namespace std;
    
    int main()
    {
        int a, b;
        char temp;
        cin >> a >> temp >> b;
    
        cout << a << '\n';
        cout << temp << '\n';
        cout << b << '\n';
    
        return 0;
    }
    
    • 결과

    이미지

    그러나 입력에 대한 처리는 예외처리가 대부분을 차지할 정도로 골치아픈 것 중에 하나입니다. 혹시 하고 싶은 것이 잘못된 값이 입력되었을 때에도 scanf와 동일한 동작을 시키고 싶은 것이라면 위와 같이 간단하지 않습니다.

    그리고 C++ 언어는 C 언어를 포함하는 언어라고 생각하시면 좋습니다. 하려고 하는 것이 C++ 표준 라이브러리에는 없는데 C 표준 라이브러리에 있는 것이라면 그것을 사용하지 않을 이유가 없습니다. 그러니 scanf 함수를 사용해도 됩니다.

    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)