>백엔드 개발 >C++ >`std::cin 대 std::cin.getline(): C 입력에 각각을 언제 사용해야 합니까?`

`std::cin 대 std::cin.getline(): C 입력에 각각을 언제 사용해야 합니까?`

Susan Sarandon
Susan Sarandon원래의
2024-12-01 06:23:11362검색

`std::cin vs. std::cin.getline(): When to Use Each for C   Input?`

std::cin.getline()과 std::cin의 차이점

C에서 입력 및 출력 작업을 할 때는 다음과 같습니다. std::cin과 std::cin.getline()의 차이점을 이해하는 것이 중요합니다. 기능.

std::cin: 단일 단어 및 숫자에 대한 입력

std::cin은 단일 단어나 숫자를 읽는 데 사용할 수 있는 입력 스트림입니다. 표준 입력 장치(일반적으로 키보드)에서.

std::cin.getline(): 입력 전체 줄

반대로, std::cin.getline()은 입력 스트림에서 전체 문자 줄을 읽는 데 사용할 수 있는 메서드입니다. 여기에는 줄 끝까지('n'으로 표시) 공백, 구두점 또는 개행 문자가 포함됩니다.

주요 차이점:

  1. 문자 제한: std::cin은 단일 단어나 숫자만 읽을 수 있지만 std::cin.getline()은 읽을 수 있습니다. 전체 줄을 포함하여 여러 문자를 읽습니다.
  2. 줄 바꿈 문자: std::cin은 첫 번째 줄 바꿈 문자에서 읽기를 중지하는 반면 std::cin.getline()은 줄 바꿈 문자를 포함합니다. string.
  3. 버퍼: std::cin은 버퍼에서 작동하므로 호출하기 전에 입력한 모든 문자가 저장됩니다. 그러나 std::cin.getline()은 사전 저장된 문자를 무시하고 입력 스트림에서 직접 읽습니다.

사용 예:

// Read a single word from the input
std::string word;
std::cin >> word;

// Read an entire line from the input
std::string line;
std::getline(std::cin, line);

결론:

상황에 따라 시나리오에서는 std::cin 또는 std::cin.getline()이 적절할 수 있습니다. 단일 단어나 숫자를 읽어야 하는 경우 std::cin이 더 효율적입니다. 그러나 공백과 줄 바꿈을 포함하여 전체 입력 줄을 캡처해야 하는 경우 std::cin.getline()이 선호되는 선택입니다.

위 내용은 `std::cin 대 std::cin.getline(): C 입력에 각각을 언제 사용해야 합니까?`의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.