Input

입력 함수 선택이 저장 범위와 남은 버퍼를 결정합니다

C 스타일 문자열 입력은 “공백을 기준으로 읽을지, 한 줄을 읽을지”와 배열 크기를 함께 정해야 합니다.

단어 입력: 공백에서 멈춤

std::cin >> name;

John Doe를 입력하면 John만 배열에 저장됩니다.

한 줄 입력: 공백 포함

std::cin.getline(fullName, sizeof(fullName));

배열 크기 안에서 개행 전까지 읽고 마지막에 '\0'을 둡니다.

std::cin >> name; 뒤의 상태

입력: John Doe + Enter
John\0 name에 저장
공백 버퍼에 남음
Doe 버퍼에 남음
개행 버퍼에 남음
1

필요한 입력 단위 선택

단어면 >>, 공백 포함 이름이면 getline을 씁니다.

2

배열 크기 전달

저장 가능한 글자 수는 배열 크기에서 널 문자 1칸을 뺀 값입니다.

3

남은 입력 정리

다음에 getline을 쓸 때는 필요하면 ignore()로 개행을 제거합니다.

핵심

입력 오류는 보통 공백 처리와 남은 개행에서 시작됩니다. 입력 단위와 버퍼 상태를 분리해 생각하세요.