Programming Language/C/C++
[C/C++] 숫자를 포함한 문자열 입력 시 오류 해결
깐요
2017. 4. 20. 20:59
문자열와 수치의 혼합 입력
참고: http://choryeonworkshop.tistory.com/111
아파트 입주 연도와 주소를 입력하여 정보를 출력하는 프로그램이다
#include <iostream> using namespace std; int main() { cout << "지금 사시는 아파트에 언제 입주하셨습니까?\n"; int year; cin >> year; cout << "주소를 말씀해 주시겠습니까?\n"; char address[80]; cin.getline(address, 80); cout << "아파트 입주 연도: " << year << endl; cout << "주소: " << address << endl; cout << "등록이 완료되었습니다!\n"; return 0; }
이번에도 두 번째 문자열을 입력하는데에 오류가 생겼다
cin이 입주 연도를 읽어들이고, Enter 키가 만들어 내는 개행 문자를 입력 큐에 남겨 두기 때문에 발생하는 문제다
(cin >> year).get()
위와 같이 get()을 사용하여 개행 문자를 읽어들이면 해결된다
320x100