String Input

입력 함수가 문자열의 끝과 버퍼 상태를 바꾼다

C 스타일 문자열 입력은 공백 처리와 널 문자 공간을 함께 고려해야 안전합니다.

단어 입력 공백 전까지만 저장
한 줄 입력 개행 전까지 저장
버퍼 정리 남은 개행을 먼저 제거
operator >>

공백에서 멈추는 입력

std::cin >> name;

`John Doe`를 입력하면 `John`만 저장되고 나머지는 버퍼에 남습니다.

getline

공백 포함 한 줄 입력

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

배열 크기 안에서 개행 전까지 읽고 마지막에 널 문자를 둡니다.

ignore

이전 입력 흔적 제거

std::cin.ignore();

바로 `getline`을 쓰기 전에 남아 있는 개행 문자를 비워 줍니다.

입력: John Doe + Enter

단어 입력 후 남는 버퍼

저장됨 John\0
남음 space
남음 Doe
남음 newline

1. 필요한 단위 선택

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

2. 배열 크기 전달

최대 글자 수는 널 문자 한 칸을 제외하고 계산합니다.

3. 버퍼 흔적 확인

숫자나 단어 입력 뒤에는 남은 개행 때문에 빈 줄이 읽힐 수 있습니다.